Mutation Testing
summary
Mutation testing introduces small code changes (mutants) to check whether the test suite detects them. The talk describes the Java tool PIT, which works on compiled classes (no source rewriting), uses mutators such as relational, arithmetic, return-value and deletion, and optimizes by running only tests that touched a changed line; an example run produced ~1,000 mutants with ~90% killed, and incremental plus parallel execution reduced repeated-run time from minutes to single-digit seconds.
AI-written summary · about
chapters (17)
- 0:00Mutation testing intro
- 3:31Pioneers' analogy to tests
- 7:53Modern testing challenges
- 11:07How mutation testing works
- 12:56Why mutation testing is rare
- 15:25PIT tool advantages
- 21:30PIT practical example
- 26:46Mutation report analysis
- 28:50Faster mutation tests
- 31:41Benefits in projects
- 33:32Key feedback
- 34:58When to adopt
- 37:25High coverage pitfalls
- 38:30Mutation testing basics
- 40:39Unit vs integration tests
- 42:22Mutation testing use cases
- 43:45Summary
related talks
20mMutation Testing: how to evaluate the effectiveness of your tests?
41mMutation testing in practice
22mMutation Testing with PIT
48mMutation Testing, or What Code Coverage Keeps Silent About
25mIntroduction to Mutation Testing
36mMutation Testing: Did my test break my code ? 🤔
43mMutation Testing with PIT
50mFrom jUnit to Mutation-Testing
