Agent Skills
返回列表
💻

TDD 工作流

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/tdd-workflow-zh。

技能介绍

问题:需求还没想清楚就开始堆代码

很多功能在实现阶段才暴露边界和异常路径,返工成本高;测试若只覆盖「能跑」,又容易变成对实现细节的耦合。测试驱动开发(TDD)把可执行规范放在代码之前:先写会失败的测试,再写刚好让测试通过的生产代码,最后在测试全绿的前提下小步重构。

技能如何组织工作流

本技能按 红—绿—重构 周期展开,并强调 TDD 三定律:只为通过失败测试而写生产代码;只写足以暴露失败的测试;只写足以让测试通过的实现。

  • 红色阶段:测试必须先失败;用测试名描述期望行为(正常路径、边界、错误状态);理想情况下每个测试一个断言。
  • 绿色阶段:遵循 YAGNI 与「最简单通过」——不提前优化、不写多余代码。
  • 重构阶段:在测试保持绿色的前提下处理重复、命名、结构与复杂度;小步改动,改完再提交。

每个测试建议走 AAA:Arrange 准备数据、Act 执行、Assert 验证。技能还给出了测试优先级(正常路径 → 错误 → 边界 → 性能)和常见反模式对照(例如后写测试、测实现而非行为、单测多断言)。

若你在 Agent 场景下协作,可参考 多 Agent 分工:A 写失败测试、B 写最小通过实现、C 负责重构——与人工 TDD 的角色切换一致。

适用边界

| 场景 | 建议 |
|------|------|
| 新功能、Bug 修复、复杂逻辑 | TDD 价值高(修 Bug 可先写复现测试) |
| 探索性开发、UI 布局 | 价值偏低,可先原型再补 TDD |

记住: 若写不出测试,通常说明需求或行为还没讲清楚——测试就是规范。

使用场景

  • 为新接口或业务规则先写描述行为的失败用例,再写最小实现通过 CI。
  • 线上 Bug 复现后先补一条会失败的回归测试,再改生产代码并确认全绿。
  • 功能已能跑但重复逻辑多,在测试全绿前提下小步提取函数并每次提交。
  • 用多 Agent 分工:一方只写红色测试、一方只写绿色最小代码、第三方专职重构。

适合人员

  • 负责核心业务模块、希望在需求变更前就用测试固定行为的后端工程师
  • 每次修缺陷都担心回归、习惯先写复现用例再动代码的维护工程师
  • 在 Code Review 里要区分「测行为」与「测实现」、推动 TDD 三定律落地的 Tech Lead
  • 用 Cursor/Agent 并行改代码、需要红—绿—重构角色边界提示词的结对编程者