Mutant Explanations
Because understanding even a small program change is hard.
Mutation analysis is a way to evaluate the quality of a test suite. A small change (mutant) is made to a program and you see if the test suite fails on the mutated code.
Mutation testing is a process to improve the quality of a test suite. Mutants that a test suite did not catch are presented to a developer and the developer needs to try to write a test that will catch the mutant. But understanding how the mutant affects the code and understanding how to write a test that will both trigger and can observe the difference can be hard! We are investigating how we can make both understanding the difference and writing a test case easier.