Kintis, M;
Papadakis, M;
Jia, Y;
Malevris, N;
Le Traon, Y;
Harman, M;
(2018)
Detecting Trivial Mutant Equivalences via Compiler Optimisations.
IEEE Transactions on Software Engineering
, 44
(4)
pp. 308-333.
10.1109/TSE.2017.2684805.
Preview |
Text
Jia_07882714.pdf Download (1MB) | Preview |
Abstract
Mutation testing realises the idea of fault-based testing, i.e., using artificial defects to guide the testing process. It is used to evaluate the adequacy of test suites and to guide test case generation. It is a potentially powerful form of testing, but it is well-known that its effectiveness is inhibited by the presence of equivalent mutants. We recently studied Trivial Compiler Equivalence (TCE) as a simple, fast and readily applicable technique for identifying equivalent mutants for C programs. In the present work, we augment our findings with further results for the Java programming language. TCE can remove a large portion of all mutants because they are determined to be either equivalent or duplicates of other mutants. In particular, TCE equivalent mutants account for 7.4% and 5.7% of all C and Java mutants, while duplicated mutants account for a further 21% of all C mutants and 5.4% Java mutants, on average. With respect to a benchmark ground truth suite (of known equivalent mutants), approximately 30% (for C) and 54% (for Java) are TCE equivalent. It is unsurprising that results differ between languages, since mutation characteristics are language-dependent. In the case of Java, our new results suggest that TCE may be particularly effective, finding almost half of all equivalent mutants.
Type: | Article |
---|---|
Title: | Detecting Trivial Mutant Equivalences via Compiler Optimisations |
Open access status: | An open access version is available from UCL Discovery |
DOI: | 10.1109/TSE.2017.2684805 |
Publisher version: | http://doi.org/10.1109/TSE.2017.2684805 |
Language: | English |
Additional information: | This work is licensed under a Creative Commons Attribution 3.0 License. For more information, see http://creativecommons.org/licenses/by/3.0/. |
Keywords: | Java, Testing, Optimization, Syntactics, Program processors, Electronic mail, Mutation Testing, Equivalent Mutants, Duplicated Mutants, Compiler Optimisation |
UCL classification: | UCL UCL > Provost and Vice Provost Offices > UCL BEAMS UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science |
URI: | https://discovery.ucl.ac.uk/id/eprint/1573723 |




Archive Staff Only
![]() |
View Item |