Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
421684 | Electronic Notes in Theoretical Computer Science | 2009 | 16 Pages |
Abstract
Mutation testing is a well known fault-based testing technique that is normally used to assess the quality of a test suite. In this paper we use the mutation operation to derive test cases that demonstrate the absence of certain faults in an implementation: In difference to conventional mutation testing, which mutates program code, we mutate program contracts and generate test-input data that is able to distinguish the mutated contract from the original one. We show how existing development tools can be used as a foundation for the presented methodology: In particular we rely on the counter-example generation capabilities of the Spec#/Boogie/Z3 system.
Related Topics
Physical Sciences and Engineering
Computer Science
Computational Theory and Mathematics