Software Testing

(5) Test Selection II

How does mutation analysis work?

  • Apply small syntactical changes to a program
    • Modified program is called mutant
  • Run existing test suite and count number of detected failures
  • If test fails on a mutant, mutant is killed
  • If test suite doesn't kill all mutants that are representative of a specific class of faults, this may hint at deficiencies of the test suite
 
Mutation score = #Mutants killed / #Non-equivalent Mutants

Diskussion