Article (Périodiques scientifiques)
Mutation Testing in Evolving Systems: Studying the relevance of mutants to code evolution
OJDANIC, Milos; SOREMEKUN, Ezekiel; DEGIOVANNI, Renzo Gaston et al.
2022In ACM Transactions on Software Engineering and Methodology
Peer reviewed vérifié par ORBi
 

Documents


Texte intégral
mutation_testing_in_evolving_systems.pdf
Postprint Éditeur (2.81 MB)
Télécharger

Tous les documents dans ORBilu sont protégés par une licence d'utilisation.

Envoyer vers



Détails



Mots-clés :
Software Testing; Mutation Testing; Continuous Integration; Evolving-Systems
Résumé :
[en] 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.
Disciplines :
Sciences informatiques
Auteur, co-auteur :
OJDANIC, Milos  ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SerVal
SOREMEKUN, Ezekiel ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SerVal
DEGIOVANNI, Renzo Gaston ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SerVal
PAPADAKIS, Mike ;  University of Luxembourg > Faculty of Science, Technology and Medicine (FSTM) > Department of Computer Science (DCS)
LE TRAON, Yves ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SerVal
Co-auteurs externes :
no
Langue du document :
Anglais
Titre :
Mutation Testing in Evolving Systems: Studying the relevance of mutants to code evolution
Date de publication/diffusion :
11 mai 2022
Titre du périodique :
ACM Transactions on Software Engineering and Methodology
ISSN :
1049-331X
Maison d'édition :
Association for Computing Machinery (ACM), Etats-Unis
Peer reviewed :
Peer reviewed vérifié par ORBi
Projet FnR :
FNR11686509 - Continuous Development With Mutation Analysis And Testing, 2017 (01/09/2018-31/08/2021) - Michail Papadakis
Disponible sur ORBilu :
depuis le 16 janvier 2023

Statistiques


Nombre de vues
199 (dont 1 Unilu)
Nombre de téléchargements
97 (dont 0 Unilu)

citations Scopus®
 
14
citations Scopus®
sans auto-citations
13
OpenCitations
 
2
citations OpenAlex
 
0
citations WoS
 
13

Bibliographie


Publications similaires



Contacter ORBilu