Riviera DEV 2018

Mutation testing, enfin une bonne mesure de la qualité des tests ?

16 May 2018 at Riviera DEV 2018
https://2018.rivieradev.fr/session/323
50 minutes mutation testing software quality test

On écrit tous des tests (n’est-ce pas ?), mais comment savoir s’ils sont utiles ?

  • Par leur nombre ? Faux, beaucoup de tests ne garantissent pas que l’application fonctionne correctement
  • Avec une bonne couverture du code ? Encore faux, mieux mais pas suffisant

L’important est d'être confiant sur la capacité des tests à détecter les problèmes (c’est pourquoi en TDD un test doit échouer au début, pour etre sur qu’il teste bien quelque chose). Laissez-moi donc vous présenter le mutation testing ! Cette technique modifie votre code, lance les tests et s’attend à ce qu’ils échouent. Si non, c’est que cette partie est mal testée… Dans ce talk je détaillerai les principes du mutation testing, expliquerai comment l’utiliser sur un projet scala et montrerai les résultats obtenus sur un projet réel.

Code d'exemples: github.com/loicknuchel/mutation-testing-sample
Photos du talk: Twitts
sketch note