SkillVaultskills Browse all 500 skills

Testing · Version 1.3.0 · Reviewed 2026-08-02

Mutation Testing Advisor

Design confidence for coverage quality and assertion strength with evidence, explicit trade-offs, and a verification plan.

4 method steps 6 documented failure modes 5 diagnostic checks 7 quality gates

Uses mutation testing to find assertions that execute code without actually verifying behavior.

₹149 one-time

Get this skill archive

What this skill helps you do

  • Coverage quality
  • Assertion strength
  • Suite prioritization

How Mutation Testing Advisor works

You provide

Suite structure, failure history, and the risk to cover

It inspects

Nondeterminism sources affecting coverage quality

It decides

A assertion strength plan at the cheapest useful level

You verify

The test fails when the behavior is broken, not only passes

What it checks first

Mutation Testing Advisor uses mutation testing to find assertions that execute code without actually verifying behavior. Use it when the work involves Coverage quality, Assertion strength, Suite prioritization.

  1. Whether the test asserts behavior or implementation, because implementation-coupled tests break on safe refactors.
  2. Sources of nondeterminism: time, randomness, ordering, concurrency, network, and shared state.
  3. Whether tests share mutable state, which makes failures depend on execution order.
  4. The test pyramid balance, since a suite dominated by end-to-end tests is slow and flaky by construction.
  5. Whether a failing test failed for the intended reason, verified by making it fail deliberately.

Failure modes it recognizes

  • A flaky test caused by a fixed sleep instead of waiting for the actual condition.
  • Tests passing in isolation and failing in suite because of leaked global or database state.
  • Time-dependent assertions failing at month or year boundaries or across daylight-saving transitions.
  • Over-mocking that verifies the mock rather than the integration, so the suite passes while production breaks.
  • A test asserting on unordered collection order, which passes until the implementation changes hashing.
  • Coverage measured but assertions absent, so lines execute without being verified.

Answers it will reject

  • Retrying a flaky test to make CI green, which converts a real intermittent bug into an invisible one.
  • Chasing a coverage percentage, which produces tests that execute code without asserting behavior.
  • Writing an end-to-end test for logic that a unit test could cover deterministically and instantly.
  • Deleting a failing test to unblock a release without recording the risk that was accepted.

Decision rules it applies

  • Choose the cheapest test level that can actually observe the failure mode.
  • A flaky test is a defect in the test or the system; quarantine with an owner and a deadline, never ignore.
  • Assert on observable behavior and public contracts so refactors stay free.
  • Every bug fix gets a test that fails before the fix and passes after it.

Evidence it asks for

  • Run the suite in randomized order to expose inter-test dependencies.
  • Track flake rate per test over time rather than treating each failure as isolated.
  • Verify a new test fails when the behavior is broken, not only that it passes when correct.

The method inside

  1. Map the artifact, actors, boundaries, and invariants relevant to coverage quality.
  2. Trace concrete failure or abuse paths for assertion strength; do not report checklist items without a mechanism.
  3. Prioritize suite prioritization findings by impact, likelihood, confidence, and cost of correction.
  4. Recommend the smallest defensible change, then define how an independent reviewer can verify it.

Deliverables

  • Coverage quality assessment
  • Assertion strength decision and action plan
  • Suite prioritization verification checklist

Evidence requirements

  • System risks and architecture boundaries
  • Existing tests, failures, and coverage evidence
  • Release cadence and supported environments

Quality gates

  • Every material claim traces to supplied evidence or is labeled as a hypothesis.
  • The response follows the declared deliverable contract.
  • No execution, access, measurement, or verification is invented.
  • Secrets and personal data are redacted rather than repeated.
  • The user receives a concrete independent verification step.
  • The relevant failure modes in this domain were considered rather than only the reported symptom.
  • No listed anti-pattern was recommended as a solution.

Example task

Input

We have 85 percent line coverage but bugs still ship. How do we tell whether the tests actually assert anything?

Expected output

Line coverage measures execution, not verification, which is exactly the gap you are describing. Mutation testing changes the code deliberately and reports which mutations no test catches; surviving mutants are the precise locations where coverage is decorative...

Boundaries and compatibility

Ideal for

  • Coverage quality: produce a decision or artifact grounded in supplied evidence.
  • Assertion strength: produce a decision or artifact grounded in supplied evidence.
  • Suite prioritization: produce a decision or artifact grounded in supplied evidence.

Out of scope

  • Chasing line coverage without risk coverage
  • Replacing integration evidence with mocks

Agent compatibility

  • GitHub Copilot custom agents
  • Claude Agent Skills / SKILL.md
  • Any instruction-following chat model

Tool policy: Advisory by default. No tools are assumed. If the host provides tools, use read-only evidence gathering unless the user explicitly approves a scoped write or execution action.