STARTS: STAtic regression test selection

STARTS: STAtic regression test selection
复制标题

开始:静态回归测试选择

DOI:
--
复制
发表时间:
2017
期刊:
International Conference on Automated Software Engineering
影响因子:
--
通讯作者:
D. Marinov
D. Marinov
中科院分区:
--
文献类型:
--
作者:
Owolabi Legunsen;A. Shi;D. Marinov

文献摘要

被引文献

相似文献

回归测试是软件开发的重要组成部分,但它可能非常耗时。回归测试选择(RTS)旨在通过只运行受影响的测试来加速回归测试,受影响的测试是由于代码更改而改变行为的测试子集。我们提出了STARTS,一个静态回归测试选择工具。与动态RTS不同,STARTS不需要代码插装或运行时信息来查找受影响的测试;相反,STARTS只使用编译时信息。具体来说,STARTS构建程序类型的依赖关系图,并在受影响时查找可以到达依赖关系图的传递闭包中的某些更改类型的测试。STARTS是一个Maven插件,可以轻松集成到任何基于Maven的Java项目中。我们发现STARTS平均选择了35.2%的测试,导致端到端运行时平均占所有测试的81.0%。STARTS的视频演示可以在https://youtu.be/PCNtk8jphrM上找到。
Regression testing is an important part of software development, but it can be very time consuming. Regression test selection (RTS) aims to speed up regression testing by running only impacted tests—the subset of tests that can change behavior due to code changes. We present STARTS, a tool for STAtic Regression Test Selection. Unlike dynamic RTS, STARTS requires no code instrumentation or runtime information to find impacted tests; instead, STARTS uses only compile-time information. Specifically, STARTS builds a dependency graph of program types and finds, as impacted, tests that can reach some changed type in the transitive closure of the dependency graph. STARTS is a Maven plugin that can be easily integrated into any Maven-based Java project. We find that STARTS selects on average 35.2% of tests, leading to an end-to-end runtime that is on average 81.0% of running all the tests. A video demo of STARTS can be found at https://youtu.be/PCNtk8jphrM.