Proceedings of the 38th International Conference on Software Engineering 2016
DOI: 10.1145/2884781.2884874
|View full text |Cite
|
Sign up to set email alerts
|

How does regression test prioritization perform in real-world software evolution?

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

3
125
0

Year Published

2018
2018
2024
2024

Publication Types

Select...
6
2

Relationship

1
7

Authors

Journals

citations
Cited by 96 publications
(128 citation statements)
references
References 58 publications
3
125
0
Order By: Relevance
“…This means that test suites from each faulty program version in Defects4J are prioritized for both each faulty version and the latest version (with mutants injected). As Section V describes, this makes for a reasonable comparison due to the fact that past work measuring the impact of software evolution on TCP efficacy has shown that mutation-based performance remains consistent when applying test cases from an earlier program version to both the earlier and later versions [45].…”
Section: B Study Contextmentioning
confidence: 99%
See 1 more Smart Citation
“…This means that test suites from each faulty program version in Defects4J are prioritized for both each faulty version and the latest version (with mutants injected). As Section V describes, this makes for a reasonable comparison due to the fact that past work measuring the impact of software evolution on TCP efficacy has shown that mutation-based performance remains consistent when applying test cases from an earlier program version to both the earlier and later versions [45].…”
Section: B Study Contextmentioning
confidence: 99%
“…Thus, it is possible that these results may differ for other TCP evaluation methodologies. However, we chose the experimental methodology set forth in this paper due to the fact that it has been widely used in previous studies [29], [42], [45], [46], [50], [78] and is likely to be used in the future.…”
Section: Threats To Validitymentioning
confidence: 99%
“…During this evolutionary process, it is crucial that developers do not introduce new bugs, known as software regressions. Regression testing is a methodology for efficiently and effectively validating software changes against an existing test suite aimed at detecting such bugs [46], [74]. One of the key tasks of the contemporary practice of continuous regression testing, is test case prioritization (TCP).…”
Section: Introductionmentioning
confidence: 99%
“…Regression test prioritization techniques reorder test executions in order to maximize a certain objective function, such as exposing faults earlier or reducing the execution time cost [46]. This practice can be readily observed in applications to large industrial codebases such as at Microsoft, where researchers have built test prioritization sys- tems for development and maintenance of Windows for a decade [61], [11].…”
Section: Introductionmentioning
confidence: 99%
“…One possible solution to this problem is test case prioritization (TCP). TCP is a topic widely studied in software testing, where test cases are prioritized so that test cases revealing faults are executed earlier, allowing software developers to identify and fix problems earlier [17,25,34,35,39]. A problem with many of the existing TCP techniques is that they rely on coverage information extracted from the source code, such as what branches/statements/functions of the source code are covered by which test cases [4,26,30,40,41].…”
Section: Introductionmentioning
confidence: 99%