Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering 2016
DOI: 10.1145/2950290.2950361
|View full text |Cite
|
Sign up to set email alerts
|

An extensive study of static regression test selection in modern software evolution

Abstract: Regression test selection (RTS) aims to reduce regression testing time by only re-running the tests affected by code changes. Prior research on RTS can be broadly split into dynamic and static techniques. A recently developed dynamic RTS technique called Ekstazi is gaining some adoption in practice, and its evaluation shows that selecting tests at a coarser, class-level granularity provides better results than selecting tests at a finer, method-level granularity. As dynamic RTS is gaining adoption, it is timel… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
74
1
2

Year Published

2018
2018
2023
2023

Publication Types

Select...
4
3

Relationship

2
5

Authors

Journals

citations
Cited by 100 publications
(111 citation statements)
references
References 46 publications
(95 reference statements)
0
74
1
2
Order By: Relevance
“…Researchers have proposed SRTS techniques that track dependencies at different granularity levels [Badri et al 2005;Kung et al 1995;Orso et al 2004;Ren et al 2003]. We performed an extensive prior study of SRTS techniques that track dependencies at both class and method levels [Legunsen et al 2016]. In that study, we selected to run tests at the level of test classes as opposed to test methods (selecting to run all test methods in an affected test class) 1 Experimental results from our prior study [Legunsen et al 2016] showed that method-level SRTS based on method call graphs is much more imprecise/unsafe and costly than class-level SRTS based on class-level dependencies.…”
Section: Static Regression Test Selectionmentioning
confidence: 99%
See 2 more Smart Citations
“…Researchers have proposed SRTS techniques that track dependencies at different granularity levels [Badri et al 2005;Kung et al 1995;Orso et al 2004;Ren et al 2003]. We performed an extensive prior study of SRTS techniques that track dependencies at both class and method levels [Legunsen et al 2016]. In that study, we selected to run tests at the level of test classes as opposed to test methods (selecting to run all test methods in an affected test class) 1 Experimental results from our prior study [Legunsen et al 2016] showed that method-level SRTS based on method call graphs is much more imprecise/unsafe and costly than class-level SRTS based on class-level dependencies.…”
Section: Static Regression Test Selectionmentioning
confidence: 99%
“…We measure the benefits and costs of these RA techniques relative to RetestAll, and to reflectionunaware static RTS [Legunsen et al 2016], henceforth called RU Analysis. We previously implemented RU Analysis in our open-source tool, STARTS [Legunsen et al 2017; STARTS Team 2018], and we build the RA techniques on the RU Analysis in STARTS.…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…Another approach by this author has been to dynamically detect, at the operating system level, all file artifacts a test depends on . Legunsen et al reported a study evaluating the performance of static regression test selection techniques, and the authors reported that class‐level approaches perform better than method‐level approaches. Zhang proposed a hybrid regression test selection approach combining method and file level selection .…”
Section: Related Workmentioning
confidence: 99%
“…While dynamic TCP techniques can be useful in practice, they may not be always applicable due to certain notable shortcomings, including: 1) the time cost of executing an instrumented program to collect coverage information [25], [50]; 2) expensive storage and maintenance of coverage information [50], [76]; 3) imprecise coverage metrics due to code changes during evolution or thread scheduling of concurrent systems [44], and 4) the absence of coverage information for newly added tests [46] or systems/modules that disallow code instrumentation [44] (e.g., code instrumentation may break the time constraints of real-time systems). Thus, to offer alternative solutions that that do not exhibit many of these shortcomings, researchers have proposed a number of TCP techniques that rely solely upon arXiv:1806.09774v1 [cs.SE] 26 Jun 2018 static information extracted from the text of source and test code.…”
Section: Introductionmentioning
confidence: 99%