Dave is a semi-retired software development consultant, with 36 years of experience in a wide variety of languages, techniques, etc. Currently, he is the T. Rex of Codosaurus, LLC (his one-man consulting firm, which explains how he can get such a cool title, at http://www.Codosaur.us/) in Fairfax, Virginia, USA.
Kill All Mutants! (Intro to Mutation Testing)
How good are your tests? Would they still pass if the tested code was changed? If so, there may be problems with your code, your tests, or both!
Mutation Testing reveals these cases. It makes lots of slightly altered versions, called «mutants», of each of your functions. If any mutants let all unit tests succeed, that implies certain flaws.
This talk will tell you how to use mutation testing, its benefits, drawbacks, inner workings, and history. There will be several examples (in clear pseudocode), and a list of tools for many popular languages and platforms.
You will come away equipped with a powerful new technique for making sure your tests are strict and your code is meaningful.