界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
开发与工程 · SKILL.md

mutation-testing

mutation-testing

【开发与工程】Use when evaluating test quality on modules containing business logic, calculation utilities, or state machines to determine whether the tests provide genuine defect detection.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: mutation-testing description: "Use when evaluating test quality on modules containing business logic, calculation utilities, or state machines to determine whether the tests provide genuine defect detection." metadata: category: testing priority: medium difficulty: advanced estimatedTime: "120" source: frontendchecklist.io url: https://frontendchecklist.io/rules/testing/mutation-testing

Use mutation testing to measure how well tests detect bugs

A codebase can have 90% line coverage and still ship critical bugs if tests only execute code without asserting meaningful outcomes. Mutation testing reveals these gaps by proving that your tests can distinguish correct code from subtly broken code — the standard that actually matters in production.

Quick Reference

  • Code coverage tells you which lines were executed; mutation score tells you which bugs were caught
  • Stryker injects small code changes (mutations) and checks whether tests fail — if they don't, the tests are weak
  • Aim for 80%+ mutation score on critical business logic paths
  • Run Stryker on a focused scope (one module) rather than the whole codebase to keep CI times manageable

Check

Assess whether this module has mutation testing configured and whether the mutation score on critical paths meets the project's quality threshold.

Fix

Set up Stryker for this module, run an initial mutation report, and improve tests to kill surviving mutants in the critical business logic paths.

Explain

Explain what mutation testing is, how Stryker works, and why mutation score is a more meaningful quality signal than code coverage alone.

Code Review

Review the Stryker configuration and mutation report to identify surviving mutants in critical code paths, and suggest test improvements to kill them.


For full implementation details, code examples, and framework-specific guidance, see references/rule.md.

Rule page: https://frontendchecklist.io/rules/testing/mutation-testing

我的收藏