TDD Skill(for Agents)
适用场景
- 新功能、Bug Fix、重构后行为校验
- 重要规则/边界变更(支付、鉴权、幂等)
核心原则
- 红-绿-重构:测试先行,先让测试失败,再最小实现通过。
- 失败是必要条件:没有看见失败,就没有验证到行为。
- 一次只测一个行为:每个测试只说明一个可验证结果。
任务执行步骤
- 写最小失败用例(行为级别)
- 验证失败点是正确缺失(不是语法/环境问题)
- 最小代码使其通过
- 重构不改变行为
- 继续下一个用例
强制执行清单
- 关键行为至少一条失败→通过证据。
- 测试名应表达“何时会发生什么”。
- 避免用测试直接验证实现细节。
- 修改业务逻辑前,先补失败测试再改代码。
- 线上高风险路径不应跳过该流程,除非有充分理由并标注豁免。
常见错误
- 先写实现再“补”测试。
- 测试过宽,混合多个场景。
- 只验证成功,不验证失败恢复。
- 视图层/副作用逻辑不稳定却没有 mock 与可控替身。
质量指标
- 可复跑:
test命令多次执行同结果 - 覆盖边界:空值、非法输入、并发、超时、重试
- 回归闭环:新测试能阻止旧 bug 回归
与项目规则冲突
- 如果已有既定测试规范(PyTest/Jest/Go test/xUnit),本文件作为高层方法论补充。
- 与本项目的 testing skill 不矛盾时同步执行。