Selecting Fault Revealing Mutants
Thierry Titcheu Chekam, Mike Papadakis, Tegawend\'e Bissyand\'e, Yves, Le Traon, Koushik Sen

TL;DR
This paper introduces FaRM, a machine learning approach for selecting and prioritizing fault revealing mutants, significantly improving fault detection efficiency over existing methods by using static program features.
Contribution
The paper presents FaRM, a novel ML-based method for fault revealing mutant selection and prioritization, outperforming existing techniques in fault detection effectiveness.
Findings
FaRM reveals 23% to 34% more faults than baseline methods.
FaRM achieves higher fault detection efficiency with a median improvement of 4-9%.
Experimental validation on 1,692 real faults demonstrates practical benefits.
Abstract
Mutant selection refers to the problem of choosing, among a large number of mutants, the (few) ones that should be used by the testers. In view of this, we investigate the problem of selecting the fault revealing mutants, i.e., the mutants that are most likely to be killable and lead to test cases that uncover unknown program faults. We formulate two variants of this problem: the fault revealing mutant selection and the fault revealing mutant prioritization. We argue and show that these problems can be tackled through a set of 'static' program features and propose a machine learning approach, named FaRM, that learns to select and rank killable and fault revealing mutants. Experimental results involving 1,692 real faults show the practical benefits of our approach in both examined problems. Our results show that FaRM achieves a good trade-off between application cost and effectiveness…
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 Testing and Debugging Techniques · Software Engineering Research · Software Reliability and Analysis Research
