Incremental Refinement Checking for Test Case Generation [chapter]

Bernhard K. Aichernig, Elisabeth Jöbstl, Matthias Kegele
2013 Lecture Notes in Computer Science  
We combine model-based testing and mutation testing to automatically generate a test suite that achieves a high mutation adequacy score. The original model representing the system under test is mutated. To generate test cases that detect whether a modelled fault has been implemented, we perform a refinement check between the original and the mutated models. Action systems serve as formal models. They are wellsuited to model reactive systems and allow non-determinism. We extend our previous work
more » ... by two techniques to improve efficiency: (1) a strategy to efficiently handle a large number of mutants and (2) incremental solving. A case study illustrates the potential of our improvements. The runtime for checking appr. 200 mutants could be reduced from 20s to 3s. We implemented our algorithms in two versions: one uses a constraint solver, the other one an SMT solver. Both show similar performance.
doi:10.1007/978-3-642-38916-0_1 fatcat:g55cieic5jahhgjki5ebcoxftm