Mutation Testing Playground

Mutation testing deliberately breaks your code in small ways and checks whether your tests notice. If a "mutant" survives, your suite has a hole. From the Thoughtworks Technology Radar Vol 34 (Trial, Apr 2026). 19 mutation operators, evaluated in-browser with no build step.

Source under test

Tests (expect(...).toBe(...) / .toEqual(...))

Try a sample

mutation score
Click Run mutation pass to generate mutants and score your tests.

How the metric maps to test quality

This playground is a teaching tool — real tools (Stryker, Pitest, cargo-mutants) work at the AST level and ignore equivalent mutants. Here we do source-string substitution, so some "surviving" mutants may be syntactically equivalent rather than genuinely uncovered. The educational point still holds: a low mutation score means your tests aren't asserting on what changed.