2013
DOI: 10.1145/2544173.2509551
|View full text |Cite
|
Sign up to set email alerts
|

Injecting mechanical faults to localize developer faults for evolving software

Abstract: This paper presents a novel methodology for localizing faults in code as it evolves. Our insight is that the essence of failure-inducing edits made by the developer can be captured using mechanical program transformations (e.g., mutation changes). Based on the insight, we present the FIFL framework, which uses both the spectrum information of edits (obtained using the existing FAULTTRACER approach) as well as the potential impacts of edits (simulated by mutation changes) to achieve more accurate fault localiza… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
33
0

Year Published

2013
2013
2022
2022

Publication Types

Select...
5
3
1

Relationship

2
7

Authors

Journals

citations
Cited by 55 publications
(33 citation statements)
references
References 72 publications
0
33
0
Order By: Relevance
“…All these metric values 13 are between 0 and 1. In PMT, when predicting the killing label, a true positive means a killed mutant which is also predicted as killed, a false positive means a live mutant predicted as killed, a false negative means a live mutant also predicted as alive, a true negative means a killed mutant predicted as alive.…”
Section: Dependent Variablesmentioning
confidence: 99%
See 1 more Smart Citation
“…All these metric values 13 are between 0 and 1. In PMT, when predicting the killing label, a true positive means a killed mutant which is also predicted as killed, a false positive means a live mutant predicted as killed, a false negative means a live mutant also predicted as alive, a true negative means a killed mutant predicted as alive.…”
Section: Dependent Variablesmentioning
confidence: 99%
“…Except for evaluating test power, mutation testing has also been shown to be suitable for simulating real faults in software testing experimentation [9], [10], [11], localizing faults [12], [13], [14], performing model transformations [15], and guiding test generation [16], [17], [18], [19], [20], [21].…”
Section: Introductionmentioning
confidence: 99%
“…the conjecture 1), Papadakis and Le-Traon depend on the similarity between mutants in an attempt to detect unknown faults: variations of existing risk evaluation formulas were used to identify suspicious mutants. Zhang et al [33], on the other hand, use mutation analysis to identify a faultinducing commit from a series of developer commits to a source code repository: their intuition is that a mutation at the same location as the faulty commit is likely to result in similar behaviours and results in test cases. Although MUSE shares a similar intuition, we do not rely on tests to exhibit similar behaviour: rather, both of MUSE metrics measure what is the differences introduced by the mutation.…”
Section: Related Workmentioning
confidence: 99%
“…Do et al [61] also showed that it is suitable to use mutation faults to evaluate regression testing techniques. Recently, Zhang et al [62] showed that mutation faults can be used to simulate the impacts of real faults. Thus, more and more software testing techniques are evaluated using mutation faults [41], [58], [63]- [65].…”
Section: B Applications Of Mutation Testingmentioning
confidence: 99%