mutation-test-runner

Run mutation testing sweeps across multiple languages and enforce quality gates.

3|2|Updated Jan 23, 2026
One-click install
npx skills add https://github.com/robotijn/ctoc --skill mutation-test-runner-robotijn
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: mutation-test-runner
Source: https://github.com/robotijn/ctoc/tree/main/skills/testing/runners/mutation-test-runner
Command: npx skills add https://github.com/robotijn/ctoc --skill mutation-test-runner-robotijn

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Line coverage is a vanity metric that fails to detect test suites which execute code without asserting on correct behavior, a widespread issue with AI-generated tests that often produce tautological assertions and near-zero mutation scores despite high coverage.

Core Features & Use Cases

  • Multi-language mutation testing: Integrates with industry-standard tools including Stryker (JS/TS), Stryker.NET (C#), PIT (Java/Kotlin), mutmut and Cosmic Ray (Python), mull (C/C++), and cargo-mutants (Rust) to run mutation sweeps across 7 language ecosystems.
  • CI/CD quality gating: Enforces configurable mutation score thresholds for critical code paths (authentication, payment processing, access control) with support for PR-level incremental/diff mode to avoid slow full sweeps on every pull request, and scheduled nightly full runs for release-bound modules.
  • AI test suite detection: Flags AI-generated test suites that exhibit the hallmark pattern of >90% line coverage paired with <40% mutation score, triggering mandatory regeneration of tests with intent-based prompts before merge.
  • Regression tracking: Alerts on mutation score drops of more than 5 percentage points against baseline runs to catch silent test quality degradation over time. Use case: For a fintech application processing customer payments, run mutation testing on the refund processing module to catch missing null-return assertions, blocking the release if the critical path mutation score falls below the 75% threshold.

Quick Start

Use the mutation-test-runner skill to run a mutation test sweep on your authentication module and report any surviving mutants on critical access control paths.

Frequently Asked Questions about mutation-test-runner

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why does high code coverage fail to catch AI-generated test suites with tautological assertions?▼

Line coverage measures execution, not assertion correctness, allowing AI-generated tests with tautological assertions to achieve >90% coverage. Mutation testing exposes this false confidence by introducing code mutations and verifying that existing tests detect the altered behavior, often revealing <40% mutation scores in such suites.

How do I run mutation testing on critical authentication paths without slowing down every pull request?▼

You can run mutation testing in a PR-level incremental mode scoped to changed code to avoid slow full sweeps on every pull request. This targets specific critical access control paths while scheduling nightly full mutation sweeps for release-bound modules to enforce quality gates.

Does mutation testing support Python and C++ projects for CI/CD quality gating?▼

Yes, mutation testing supports Python and C++ through mutmut, Cosmic Ray, and mull, alongside Stryker, PIT, and cargo-mutants. It integrates into CI/CD pipelines to enforce configurable mutation score thresholds across JavaScript, TypeScript, C#, Java, Kotlin, C, C++, and Rust.

How do I detect silent test quality degradation over time in a fintech payment processing module?▼

Mutation testing tracks regression by alerting on mutation score drops exceeding 5 percentage points against baseline runs. This catches silent test quality degradation in critical modules like payment processing, blocking releases when scores fall below enforced minimum thresholds.

Can I block a merge if the mutation score on a refund processing module falls below 75 percent?▼

Yes, you can configure CI/CD quality gates to enforce minimum mutation score thresholds for critical code paths like refund processing. The pipeline blocks the release if the mutation score falls below the 75% threshold and surfaces surviving mutants on access control paths.

What is the best way to validate that existing tests catch real bugs instead of just covering code?▼

Mutation testing is the best way to validate real bug detection by introducing small, targeted code mutations and verifying that existing tests fail. This eliminates the false confidence of line coverage metrics alone and ensures tests actually assert on correct behavior.