作者
Jiyang Zhang, Yu Liu, Milos Gligoric, Owolabi Legunsen, August Shi
发表日期
2022/5/17
图书
Proceedings of the 3rd ACM/IEEE International Conference on Automation of Software Test
页码范围
17-28
简介
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 …
引用总数
学术搜索中的文章
J Zhang, Y Liu, M Gligoric, O Legunsen, A Shi - Proceedings of the 3rd ACM/IEEE International …, 2022