[en] Mutation testing consists of generating test cases that detect faults
injected into software (generating mutants) which its original test suite could
not. By running such an augmented set of test cases, it may discover actual
faults that may have gone unnoticed with the original test suite. It is thus a
desired practice for embedded software running in safety-critical
cyber-physical systems (CPS). Unfortunately, the state-of-the-art tool
targeting C, a typical language for CPS software, relies on symbolic execution,
whose limitations often prevent its application. MOTIF overcomes such
limitations by leveraging grey-box fuzzing tools to generate unit test cases in
C that detect injected faults in mutants. Indeed, fuzzing tools automatically
generate inputs by exercising the compiled version of the software under test
guided by coverage feedback, thus overcoming the limitations of symbolic
execution. Our empirical assessment has shown that it detects more faults than
symbolic execution (i.e., up to 47 percentage points), when the latter is
applicable.
Centre de recherche :
Interdisciplinary Centre for Security, Reliability and Trust (SnT) > SVV - Software Verification and Validation
Disciplines :
Sciences informatiques
Auteur, co-auteur :
LEE, Jaekwon; University of Ottawa [CA]
VIGANO, Enrico; Unilu - University of Luxembourg [LU] > SnT
PASTORE, Fabrizio ; University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > SVV
BRIAND, Lionel; University of Ottawa [CA] ; University of Limerick > LERO
Co-auteurs externes :
yes
Langue du document :
Anglais
Titre :
MOTIF: A tool for Mutation Testing with Fuzzing
Date de publication/diffusion :
2024
Nom de la manifestation :
17th IEEE International Conference on Software Testing, Verification and Validation (ICST) 2024
Date de la manifestation :
27 - 31 May 2024
Numéro de la conférence :
17
Manifestation à portée :
International
Titre de l'ouvrage principal :
Companion Proceedings of the 17th IEEE International Conference on Software Testing, Verification and Validation (ICST) 2024
M. Papadakis, D. Shin, S. Yoo, and D.-H. Bae, "Are mutation scores correlated with real fault detection? A large scale empirical study on the relationship between mutants and real faults, " in 2018 IEEE/ACM 40th International Conference on Software Engineering (ICSE). IEEE, 2018, pp. 537-548.
T. T. Chekam, M. Papadakis, M. Cordy, and Y. L. Traon, "Killing stubborn mutants with symbolic execution, " ACM Transactions on Software Engineering and Methodology, vol. 30, no. 2, Jan. 2021.
C. Cadar, D. Dunbar, and D. Engler, "Klee: Unassisted and automatic generation of high-coverage tests for complex systems programs, " in Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation, ser. OSDI'08, vol. 8. USA: USENIX Association, 2008, p. 209-224.
J. Lee, E. Viganò, O. Cornejo, F. Pastore, and L. Briand, "Fuzzing for cps mutation testing, " in Proceedings of the 38th IEEE/ACM International Conference on Automated Software Engineering (ASE 2023), 2023. [Online]. Available: https://arxiv. org/abs/2308. 07949
A. Fioraldi, D. Maier, H. Eißfeldt, and M. Heuse, "AFL++: Combining incremental steps of fuzzing research, " in 14th USENIX Workshop on Offensive Technologies (WOOT 20). USENIX Association, Aug. 2020.
J. Lee, E. Viganò, O. Cornejo, F. Pastore, and L. Briand, "MOTIF toolset, " https://github. com/SNTSVV/MOTIF, 2023.
O. E. Cornejo Olivares, F. Pastore, and L. Briand, "Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results in the Space Domain, " IEEE Transactions on Software Engineering, vol. 48, no. 10, pp. 3913-3939, 2022. [Online]. Available: https: //doi. org/10. 1109/TSE. 2021. 3107680
O. Cornejo, F. Pastore, and L. Briand, "Mass: A tool for mutation analysis of space cps, " in 2022 IEEE/ACM 44th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), 2022, pp. 134-138.
European Space Agency, "MLFS-mathematical library for space software, " 2021. [Online]. Available: https://essr. esa. int/project/ mlfs-mathematical-library-for-flight-software