Software Mutational Robustness: Bridging the Gap Between Mutation Testing and Evolutionary Biology
In the mutation testing paradigm, test suite quality is measured by its ability to detect (or kill) variant programs generated through application of random changes to an original program. The ideal test suite is sensitive to any semantic change. In evolutionary biology, however, neutral mutations that leave fitness unchanged are considered to be beneficial - improving the system's robustness and its ability to discover evolutionary improvements. In this paper, the authors generate a population of variant programs, created from an original program by applying lightweight random mutations. They adopt biological terminology and refer to un-killed variants as neutral, and the percentage of all variants that are neutral is defined as the program's mutational robustness.