qa-mutation-testing

Mutation testing with StrykerJS, Stryker.NET, PIT, mutmut and Mull: one canonical tool per language, plus triage of surviving mutants. Survivor triage classifies why each mutant lived (missing case, weak assertion, equivalent mutant) and drafts the tests that kill it.

Install this plugin
/plugin install qa-mutation-testing@testland-qa

First time? Add the marketplace with /plugin marketplace add testland/qa

View source (opens in a new tab)
Plugin
Version
v1.3.4
Contents
6 skills

Skills6

About qa-mutation-testing

Mutation testing across the major language ecosystems. Mutation testing inserts small bugs (mutants) into production code; if tests pass, they don't actually catch the regressions. Surviving mutants reveal weak assertions and missing edge-case tests that coverage hides.

Choosing a tool

One canonical mutation tool per language - detect the language from the project root and pick the matching row:

Project signalLanguageToolSkill
package.json (with or without TypeScript)JavaScript / TypeScriptStrykerstryker-mutation
*.csproj / *.sln.NETStryker.NETstryker-net-mutation
pom.xml / build.gradle* / *.javaJVM (Java, Kotlin)PIT (PITest)pitest-mutation
pyproject.toml / setup.py / requirements.txtPythonMutmutmutmut-mutation
CMakeLists.txt / Makefile with C/C++ sourcesC / C++Mull (needs an existing test binary)mull-mutation

Notes: polyglot repos run one tool per language as separate CI jobs (Stryker and Stryker.NET are separate codebases with separate mutator catalogs). Languages outside this table (Rust, Go, Ruby, PHP, Elixir) are not covered - look for language-native alternatives. Start with the 1-2 most critical modules, not the whole codebase; gate CI at the team's baseline + N%, not 100% (scores plateau at 70-85% for well-tested code - see mutant-survival-triage on equivalent mutants).