Unit testing ensures your production code is relevant. But what does ensure your testing code is relevant? Come discover mutation testing and make sure your never forget another assert again.
In the realm of testing, the code coverage metrics is the most often talked about. A line (or a branch) is considered to have been covered if during test execution this line has been run. However, it doesn't mean that the test has been useful or even that an assert has been coded.
Mutation testing creates mutants from code - a deviation from the written code, and test them also. If a test still passes on a mutant, then the test is not relevant. PIT is a Java tool that makes mutation testing possible.
Nicolas Fränkel
Consultant for over a decade, as a developer or software architect. I also sometimes work as a trainer, a teacher or a book author. But I'm definitely a code geek, though I've more interest in some areas: testing, code quality and GUI are among those that score.