Mutation Testing in Evolving Systems: Studying the Relevance of Mutants to Code Evolution

Author:

Ojdanic Milos1ORCID,Soremekun Ezekiel1ORCID,Degiovanni Renzo1ORCID,Papadakis Mike1ORCID,Le Traon Yves1ORCID

Affiliation:

1. SnT, University of Luxembourg, Luxembourg

Abstract

Context: When software evolves, opportunities for introducing faults appear. Therefore, it is important to test the evolved program behaviors during each evolution cycle. However, while software evolves, its complexity is also evolving, introducing challenges to the testing process. To deal with this issue, testing techniques should be adapted to target the effect of the program changes instead of the entire program functionality. To this end, commit-aware mutation testing , a powerful testing technique, has been proposed. Unfortunately, commit-aware mutation testing is challenging due to the complex program semantics involved. Hence, it is pertinent to understand the characteristics, predictability, and potential of the technique. Objective: We conduct an exploratory study to investigate the properties of commit-relevant mutants , i.e., the test elements of commit-aware mutation testing, by proposing a general definition and an experimental approach to identify them. We thus aim at investigating the prevalence, location, and comparative advantages of commit-aware mutation testing over time (i.e., the program evolution). We also investigate the predictive power of several commit-related features in identifying and selecting commit-relevant mutants to understand the essential properties for its best-effort application case. Method: Our commit-relevant definition relies on the notion of observational slicing, approximated by higher-order mutation. Specifically, our approach utilizes the impact of mutants, effects of one mutant on another in capturing and analyzing the implicit interactions between the changed and unchanged code parts. The study analyses millions of mutants (over 10 million), 288 commits, five (5) different open-source software projects involving over 68,213 CPU days of computation and sets a ground truth where we perform our analysis. Results: Our analysis shows that commit-relevant mutants are located mainly outside of program commit change (81%), suggesting a limitation in previous work. We also note that effective selection of commit-relevant mutants has the potential of reducing the number of mutants by up to 93%. In addition, we demonstrate that commit relevant mutation testing is significantly more effective and efficient than state-of-the-art baselines, i.e., random mutant selection and analysis of only mutants within the program change. In our analysis of the predictive power of mutants and commit-related features (e.g., number of mutants within a change, mutant type, and commit size) in predicting commit-relevant mutants, we found that most proxy features do not reliably predict commit-relevant mutants . Conclusion: This empirical study highlights the properties of commit-relevant mutants and demonstrates the importance of identifying and selecting commit-relevant mutants when testing evolving software systems.

Funder

Luxembourg National Research Funds

Publisher

Association for Computing Machinery (ACM)

Subject

Software

Reference51 articles.

1. Java Platform. [n.d.]. Standard Edition API Specification. https://docs.oracle.com/javase/7/docs/api/java/io/Reader.html. [Online; accessed 10-December-2021].

2. Mohammad Amin Alipour, August Shi, Rahul Gopinath, Darko Marinov, and Alex Groce. 2016. Evaluating non-adequate test-case reduction. In 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE’16). IEEE, 16–26.

3. Paul Ammann, Marcio Eduardo Delamaro, and Jeff Offutt. 2014. Establishing theoretical minimal sets of mutants. In 2014 IEEE Seventh International Conference on Software Testing, Verification and Validation. IEEE.

4. Taweesup Apiwattanapong, Raúl A. Santelices, Pavan Kumar Chittimalli, Alessandro Orso, and Mary Jean Harrold. 2006. MATRIX: Maintenance-oriented testing requirements identifier and examiner. In Testing: Academia and Industry Conference-Practice And Research Techniques (TAIC PART’06), 29–31 August 2006, Windsor, United Kingdom. 137–146. 10.1109/TAIC-PART.2006.18

5. Semantics guided regression test cost reduction

Cited by 9 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Large Language Models for Equivalent Mutant Detection: How Far Are We?;Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis;2024-09-11

2. When simplicity meets effectiveness: Detecting code comments coherence with word embeddings and LSTM;Proceedings of the 28th International Conference on Evaluation and Assessment in Software Engineering;2024-06-18

3. A Mutation-Guided Assessment of Acceleration Approaches for Continuous Integration: An Empirical Study of YourBase;Proceedings of the 21st International Conference on Mining Software Repositories;2024-04-15

4. Leveraging Genetic Algorithms for Efficient Search-Based Higher Order Mutation Testing;Computing and Informatics;2024

5. Robustness-Enhanced Assertion Generation Method Based on Code Mutation and Attack Defense;Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering;2024

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3