MuRS: Mutant Ranking and Suppression using Identifier Templates

06/15/2023
by   Zimin Chen, et al.
0

Diff-based mutation testing is a mutation testing approach that only mutates lines affected by a code change under review. Google's mutation testing service integrates diff-based mutation testing into the code review process and continuously gathers developer feedback on mutants surfaced during code review. To enhance the developer experience, the mutation testing service implements a number of suppression rules, which target not-useful mutants-that is, mutants that have consistently received negative developer feedback. However, while effective, manually implementing suppression rules require significant engineering time. An automatic system to rank and suppress mutants would facilitate the maintenance of the mutation testing service. This paper proposes and evaluates MuRS, an automated approach that groups mutants by patterns in the source code under test and uses these patterns to rank and suppress future mutants based on historical developer feedback on mutants in the same group. To evaluate MuRS, we conducted an A/B testing study, comparing MuRS to the existing mutation testing service. Despite the strong baseline, which uses manually developed suppression rules, the results show a statistically significantly lower negative feedback ratio of 11.45 for the baseline. The results also show that MuRS is able to recover existing suppression rules implemented in the baseline. Finally, the results show that statement-deletion mutant groups received both the most positive and negative developer feedback, suggesting a need for additional context that can distinguish between useful and not-useful mutants in these groups. Overall, MuRS has the potential to substantially reduce the development and maintenance cost for an effective mutation testing service by automatically learning suppression rules.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/22/2021

Practical Mutation Testing at Scale

Mutation analysis assesses a test suite's adequacy by measuring its abil...
research
03/12/2021

Sentinel: A Hyper-Heuristic for the Generation of Mutant Reduction Strategies

Mutation testing is an effective approach to evaluate and strengthen sof...
research
02/13/2018

MDroid+: A Mutation Testing Framework for Android

Mutation testing has shown great promise in assessing the effectiveness ...
research
08/15/2023

Fuzzing for CPS Mutation Testing

Mutation testing can help reduce the risks of releasing faulty software....
research
03/01/2021

What Are We Really Testing in Mutation Testing for Machine Learning? A Critical Reflection

Mutation testing is a well-established technique for assessing a test su...
research
12/28/2021

Cerebro: Static Subsuming Mutant Selection

Mutation testing research has indicated that a major part of its applica...
research
01/28/2023

Assertion Inferring Mutants

Specification inference techniques aim at (automatically) inferring a se...

Please sign up or login with your details

Forgot password? Click here to reset