Comparing and Combining Analysis-Based and Learning-Based Regression Test Selection

13Citations
Citations of this article
24Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Regression testing-rerunning tests on each code version to detect newly-broken functionality-is important and widely practiced. But, regression testing is costly due to the large number of tests and the high frequency of code changes. Regression test selection (RTS) optimizes regression testing by only rerunning a subset of tests that can be affected by changes. Researchers showed that RTS based on program analysis can save substantial testing time for (medium-sized) open-source projects. Practitioners also showed that RTS based on machine learning (ML) works well on very large code repositories, e.g., in Facebook's monorepository. We combine analysis-based RTS and ML-based RTS by using the latter to choose a subset of tests selected by the former. We first train several novel ML models to learn the impact of code changes on test outcomes using a training dataset that we obtain via mutation analysis. Then, we evaluate the benefits of combining ML models with analysis-based RTS on 10 projects, compared with using each technique alone. Combining ML-based RTS with two analysis-based RTS techniques-Ekstazi and STARTS-selects 25.34% and 21.44% fewer tests, respectively. CCS CONCEPTS • Software and its engineering $\rightarrow$Software testing and debugging.

Cite

CITATION STYLE

APA

Zhang, J., Liu, Y., Gligoric, M., Legunsen, O., & Shi, A. (2022). Comparing and Combining Analysis-Based and Learning-Based Regression Test Selection. In Proceedings - 3rd ACM/IEEE International Conference on Automation of Software Test, AST 2022 (pp. 17–28). Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1145/3524481.3527230

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free