"But my tests passed!" - Exploring C++ Test Suite Weaknesses with Mutation Testing
summary
Mutation testing is applied to C++ with a clang plugin and a CMake setup using mull to inject tiny operator changes into a 32-bit IEEE float addition implementation; the demo runs in reasonable time, finds missing edge-case tests and some algorithmic fragilities, and yields 56 mutants 3 survived for a 94% mutation score. Setup is two compiler flags and a config, analysis is time‑consuming but the approach uncovers gaps that coverage misses.
AI-written summary · about
chapters (7)
- 0:00Test suite weaknesses
- 3:58Mutation testing importance
- 9:11C++ mutation tools
- 13:30Setting up mutation testing
- 25:54Live mutation demo
- 32:38Conclusion and key takeaways
- 37:41Q&A
related talks
44mTesting The Tests: Mutation Testing for C++
20mUnleashing the Power of Mutation Testing: Supercharging Software Quality and Resilien...
40mMutation Testing: How Good Are Your Tests
07mWho is Testing the Tests?
22mKill All Mutants! (Introduction to Mutation Testing)
50mKill All Mutants! Intro to Mutation Testing
37mAre your tests good enough?
36mMutation Testing: Did my test break my code ? 🤔
