Software Engineering Radio - the podcast for professional software developers

SE Radio 632: Goran Petrovic on Mutation Testing at Google

4 snips
Sep 5, 2024
Goran Petrovic, a Staff Software Engineer at Google, delves into the world of mutation testing. He explains how this technique introduces artificial flaws to assess the effectiveness of test suites, surpassing traditional coverage metrics. Goran discusses Google’s unique infrastructure for mutation testing, detailing its role in enhancing software quality and developer productivity. He highlights innovative strategies like sophisticated caching and suppression heuristics that improve bug detection. Listeners gain insights into adopting this vital practice in engineering teams.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
INSIGHT

Mutation Testing Improves Test Suites

  • Mutation testing assesses test suite effectiveness by checking if tests detect small, injected faults (mutants).
  • This goes beyond code coverage, ensuring tests have meaningful assertions and catch real bugs.
ANECDOTE

Programming as Bug Introduction and Removal

  • Goran Petrovic highlights that programming often involves introducing and then fixing bugs.
  • He uses this observation to justify why intentionally inserting bugs via mutation testing is valuable.
INSIGHT

Correlation Between Mutants and Real Bugs

  • While mutants may not resemble real-world bugs, they correlate with them.
  • Preventing mutants from surviving tests increases the likelihood of also catching actual bugs.
Get the Snipd Podcast app to discover more snips from this episode
Get the app