Speaker Deck

Testing with mutants

by Jan Stępień

Published December 1, 2016 in Programming

As seen on Clojure eXchange 2016, Lambda Days 2017 and :clojureD 2017.

Property-based testing is mainstream now (there, I've said it). A recurring topic at EuroClojure, the generative approach to testing popularised by test.check enjoys wide adoption in the Clojure community.

This talk is dedicated to another randomised testing technique. Unlike property-based testing, which inspects our src directory, mutation testing audits contents of the test one. It introduces subtle bugs to source code of our projects and verifies that our test suites catch those synthetic problems. Clojure, a homoiconic language with dynamic code reloading, should offer us an excellent foundation for building a mutation testing library. But there’s not a single one out there. Why? Let’s try to answer this question together.

Video: https://youtu.be/ux9wP3mU7xM