File-level vs. module-level regression test selection for .NET

File-level vs. module-level regression test selection for .NET
复制标题

.NET 的文件级与模块级回归测试选择

DOI:
10.1145/3106237.3117763
复制
发表时间:
2017
期刊:
Joint Meeting on Foundations of Software Engineering
影响因子:
--
通讯作者:
Gligoric, Milos
Gligoric, Milos
中科院分区:
--
文献类型:
--
作者:
Vasic, Marko;Parvez, Zuhair;Milicevic, Aleksandar;Gligoric, Milos

文献摘要

参考文献

被引文献

相似文献

回归测试用于检查软件演化的正确性。随着敏捷开发方法的采用,测试和软件修订的数量急剧增加,因此回归测试的成本也随之增加。研究人员提出了回归测试选择(RTS)技术,通过跳过不受最近程序更改影响的测试来优化回归测试。Ekstazi就是这样一种最先进的技术;Ekstazi是为Java编程语言实现的,已经被几家公司和开源项目采用。我们报告了我们实现和评估Ekstazi#的经验,Ekstazi#是一个类似Ekstazi的.NET工具。我们描述了将Ekstazi的想法引入.NET平台的关键挑战。我们在11个开源项目上评估了Ekstazi#,以及一个比每个开源项目都大得多的微软内部项目。最后,我们将Ekstazi#与增量构建系统(也是由Microsoft开发的)进行了比较,该系统开箱即用,只要任务的依赖关系在当前成功的构建和上次成功的构建之间没有变化,它就可以提供模块级别的依赖关系跟踪和跳过任务(包括测试执行)。对于开源项目,Ekstazi#平均减少了43.70%的回归测试时间,而对于Microsoft项目,则减少了65.26%(后者是对增量构建所带来的节省的补充)。
Regression testing is used to check the correctness of evolving software. With the adoption of Agile development methodology, the number of tests and software revisions has dramatically increased, and hence has the cost of regression testing. Researchers proposed regression test selection (RTS) techniques that optimize regression testing by skipping tests that are not impacted by recent program changes. Ekstazi is one such state-of-the art technique; Ekstazi is implemented for the Java programming language and has been adopted by several companies and open-source projects.We report on our experience implementing and evaluating Ekstazi#, an Ekstazi-like tool for .NET. We describe the key challenges of bringing the Ekstazi idea to the .NET platform. We evaluate Ekstazi# on 11 open-source projects, as well as an internal Microsoft project substantially larger than each of the open-source projects. Finally, we compare Ekstazi# to an incremental build system (also developed at Microsoft), which, out of the box, provides module-level dependency tracking and skipping tasks (including test execution) whenever dependencies of a task do not change between the current and the last successful build. Ekstazi# on average reduced regression testing time by 43.70% for the open-source projects and by 65.26% for the Microsoft project (the latter is in addition to the savings provided by incremental builds).
大规模分布式软件系统类防火墙回归测试选择技术案例研究
DOI: --
发表时间: 2005
期刊: International Symposium on Empirical Software Engineering
影响因子: --
作者:
M. Skoglund;P. Runeson
通讯作者: P. Runeson
改变微软的构建:革命还是进化
DOI: 10.1145/2970276.2985779
发表时间: 2016
期刊: 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE)
影响因子: --
作者:
Wolfram Schulte
通讯作者: Wolfram Schulte
当源代码不可用时,用于变更识别和回归测试选择的轻量级过程的初步研究
DOI: 10.1109/issre.2005.8
发表时间: 2005
期刊: 16th IEEE International Symposium on Software Reliability Engineering (ISSRE'05)
影响因子: --
作者:
Jiang Zheng;Brian P. Robinson;L. Williams;Karen Smiley
通讯作者: Karen Smiley
具有动态依赖关系的健全且优化的增量构建系统
DOI: 10.1145/2814270.2814316
发表时间: 2015
期刊: Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications
影响因子: --
作者:
Sebastian Erdweg;Moritz Lichter;Manuel Weiel
通讯作者: Manuel Weiel
跨 JVM 边界的回归测试选择
DOI: 10.1145/3106237.3106297
发表时间: 2017
期刊: Joint Meeting on Foundations of Software Engineering
影响因子: --
作者:
Celik, Ahmet;Vasic, Marko;Milicevic, Aleksandar;Gligoric, Milos
通讯作者: Gligoric, Milos