Nobody argues these days that unit tests are useful and provide valuable feedback about your code. But who watches the watchmen? Let's talk about test code quality, code coverage and introduce mutation based testing techniques.
around 10 tests per class • 1 test runs around 1ms • total test suite runtime is about 3s Is it really slow? Let’s do 10 mutations per class • We get 3000 (300 * 10) mutations • runtime with all mutations is 150 minutes (3s * 3000)
tested • Mutation testing highlights code that definitely is tested • Given non equivalent mutations, good test suite should work the same as a hash function