Mutation Testing in Evolving Systems: Studying the relevance of mutants to code evolution
Milos Ojdanic, Ezekiel Soremekun, Renzo Degiovanni, Mike Papadakis,, Yves Le Traon

TL;DR
This study investigates commit-relevant mutants in evolving software, showing their distribution outside change areas, the efficiency of selecting relevant mutants, and the limited predictive power of common features, thus enhancing mutation testing during software evolution.
Contribution
It introduces a general definition and experimental approach for identifying commit-relevant mutants, demonstrating their properties and the effectiveness of targeted mutation testing in evolving systems.
Findings
Most commit-relevant mutants are outside changed code areas.
Selective mutation testing can reduce mutants by up to 93%.
Common proxy features do not reliably predict commit-relevant mutants.
Abstract
When software evolves, opportunities for introducing faults appear. Therefore, it is important to test the evolved program behaviors during each evolution cycle. We conduct an exploratory study to investigate the properties of commit-relevant mutants, i.e., the test elements of commit-aware mutation testing, by offering a general definition and an experimental approach to identify them. We thus, aim at investigating the prevalence, location, comparative advantages of commit-aware mutation testing over time (i.e., the program evolution) and the predictive power of several commit-related features to understand the essential properties for its best-effort application case. Our approach utilizes the impact of mutants and the 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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software System Performance and Reliability
