The state-of-the-practice in software development is driven by constant change fueled by continuous integration servers. Such constant change demands for frequent and fully automated tests capable to detect faults immediately upon project build. As the fault detection capability of the test suite becomes so important, modern software development teams continuously monitor the quality of the test suite as well. However, it appears that the state-of-the-practice is reluctant to adopt strong coverage metrics (namely mutation coverage), instead relying on weaker kinds of coverage (namely branch coverage). In this paper, we investigate three reasons that prohibit the adoption of mutation coverage in a continuous integration setting: (1) the difficulty of its integration into the build system, (2) the perception that branch coverage is "good enough", and (3) the performance overhead during the build. Our investigation is based on a case study involving four open source systems and one industrial system. We demonstrate that mutation coverage reveals additional weaknesses in the test suite compared to branch coverage and that it is able to do so with an acceptable performance overhead during project build.


翻译:软件开发方面的最新做法是由连续整合服务器推动的不断变化驱动的。这种不断的变化要求经常和完全自动化的测试要求,能够在项目建设时立即发现故障。随着测试套件的故障检测能力变得如此重要,现代软件开发团队也不断监测测试套件的质量。然而,看来最新做法不愿意采用强大的覆盖度(即突变覆盖),而依赖较弱的覆盖度(即分支覆盖 ) 。在本文中,我们调查了在连续整合环境中禁止采用突变覆盖的三个原因:(1) 难以将其纳入构建系统,(2) 认为分支覆盖“足够好 ”,(3) 建设过程中的业绩管理。我们的调查是以涉及四个开放源系统和一个工业系统的案例研究为基础。我们证明,与分支覆盖相比,测试套件的覆盖率变化暴露出更多的弱点,而且能够在项目建设期间以可接受的绩效管理方式做到这一点。

0
下载
关闭预览

相关内容

【Google】平滑对抗训练,Smooth Adversarial Training
专知会员服务
48+阅读 · 2020年7月4日
【Manning新书】现代Java实战,592页pdf
专知会员服务
99+阅读 · 2020年5月22日
Python分布式计算,171页pdf,Distributed Computing with Python
专知会员服务
107+阅读 · 2020年5月3日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
152+阅读 · 2019年10月12日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
Yoshua Bengio,使算法知道“为什么”
专知会员服务
7+阅读 · 2019年10月10日
CCF A类 | 顶级会议RTSS 2019诚邀稿件
Call4Papers
10+阅读 · 2019年4月17日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
已删除
将门创投
3+阅读 · 2018年10月11日
计算机类 | 国际会议信息7条
Call4Papers
3+阅读 · 2017年11月17日
Arxiv
0+阅读 · 2021年6月15日
Arxiv
0+阅读 · 2021年4月28日
Arxiv
13+阅读 · 2018年4月6日
VIP会员
相关VIP内容
【Google】平滑对抗训练,Smooth Adversarial Training
专知会员服务
48+阅读 · 2020年7月4日
【Manning新书】现代Java实战,592页pdf
专知会员服务
99+阅读 · 2020年5月22日
Python分布式计算,171页pdf,Distributed Computing with Python
专知会员服务
107+阅读 · 2020年5月3日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
152+阅读 · 2019年10月12日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
Yoshua Bengio,使算法知道“为什么”
专知会员服务
7+阅读 · 2019年10月10日
相关资讯
CCF A类 | 顶级会议RTSS 2019诚邀稿件
Call4Papers
10+阅读 · 2019年4月17日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
已删除
将门创投
3+阅读 · 2018年10月11日
计算机类 | 国际会议信息7条
Call4Papers
3+阅读 · 2017年11月17日
Top
微信扫码咨询专知VIP会员