qa-mutation-effectiveness
Installation
SKILL.md
qa-mutation-effectiveness
1. Position
测测试套件够不够严的 skill,不是测代码对不对。心智区别(关键):
- Code coverage 回答:"这行代码被某个测试执行过吗?" —— 但执行 ≠ 验证。一个没有断言的测试能跑满 100% 覆盖率却抓不到任何 bug。
- Mutation score 回答:"如果我往代码里注入一个 bug(mutant),现有测试会不会失败?" —— 这是测试有效性的直接度量。注入的 bug 被测试杀掉(killed)= 好;存活(survived)= 测试有洞。
qa-test-design-tdd-bridge §3 只把 mutation 列为"可选项一句话";本 skill 把它落成真能跑、带阈值 gate、带成本控制的能力。
成本控制是第一性约束:mutation testing 会对每个 mutant 重跑测试套件,朴素全量跑极慢(O(mutants × test-suite-time))。因此本 skill 只测 High/Critical 风险模块的 diff——cargo-mutants --in-diff / Stryker 的 mutate glob 限定 + --since / --incremental / mutmut 的 paths_to_mutate 收窄。绝不无脑全仓跑。