~/talk

Kill All Mutants! (Intro to Mutation Testing)

Talkat Voxxed Days CERN 2025 · on Wednesday, 2025-01-15· [testing]
slides:none on file

Mutation testing generates small semantic changes in copies of code and runs the tests to see which mutants are killed vs survived, exposing weak tests and meaningless or redundant code. Tools map functions to their covering tests, create mutants (examples include operator swaps, removing loops, replacing bodies) and report survivors; a rough worst case is 1000 mutants per function leading to hundreds of test runs (minutes to hours) unless tooling filters or incremental runs are used. Use survivors to remove redundant code or add focused tests; results need human interpretation.

AI-written summary · about

  1. 0:00Mutation testing intro
  2. 1:30Test coverage isn't enough
  3. 2:57How mutation testing works
  4. 6:53Mutation vs chaos/fuzzing
  5. 9:44Mutation tools workflow
  6. 12:35Technical details of mutation testing
  7. 17:29Simple mutation example
  8. 24:18Complex mutation example
  9. 28:58History of mutation testing
  10. 31:26Why mutation testing is CPU-heavy
  11. 32:30Single mutations per mutant
  12. 34:37Integrating mutation testing
  13. 36:25Summary and drawbacks
  14. 37:08Q&A: Argument swapping in tests
  15. 40:04Q&A: Over-engineering and LLMs
  16. 42:38Q&A: Mutants causing infinite loops
  17. 44:25Q&A: Post-deployment mutation testing
  18. 45:47Q&A: Mutation testing and mocking
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.