mcpField
T
tdd-workflow

tdd-workflow

github.com/vudovn测试与质量8.2k180 次安装9 周前更新
代码仓库

关于 tdd-workflow

为开发者提供测试驱动开发(TDD)的分阶段工作流指南,强调先编写失败测试,再实现最小代码并重构。还涵盖测试组织、优先级和多 Agent 协作。

主要功能

  1. 01RED→GREEN→REFACTOR 循环
  2. 02三条 TDD 法则
  3. 03AAA 测试组织模式
  4. 04测试优先级与反模式
  5. 05多 Agent 分工示例

适用场景

  1. 01为新功能先编写行为测试
  2. 02修复缺陷时先复现问题
  3. 03逐步重构并保持测试通过

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/vudovn/ag-kit --skill tdd-workflow

安装后在 Claude Code 中输入/tdd-workflow确认已加载。

详细介绍

TDD 工作流

先编写测试,再编写代码。


1. TDD 循环

🔴 RED → Write failing test
    ↓
🟢 GREEN → Write minimal code to pass
    ↓
🔵 REFACTOR → Improve code quality
    ↓
   Repeat...

2. TDD 三定律

  1. 只编写能让失败测试通过的生产代码
  2. 只编写足以证明失败的测试
  3. 只编写足以让测试通过的代码

3. RED 阶段原则

编写内容
重点示例
行为“应能将两个数字相加”
边界情况“应能处理空输入”
错误状态“无效数据应抛出异常”
RED 阶段规则
  • 测试必须先失败
  • 测试名称应描述预期行为
  • 每个测试只包含一个断言(理想情况下)

4. GREEN 阶段原则

最少代码
原则含义
YAGNI你不会需要它
最简单的做法编写通过测试所需的最少代码
不做优化只要能正常工作即可
GREEN 阶段规则
  • 不要编写不需要的代码
  • 暂时不要优化
  • 通过测试,仅此而已

5. REFACTOR 阶段原则

改进内容
领域操作
重复代码提取共用代码
命名清晰表达意图
结构改进组织方式
复杂度简化逻辑
REFACTOR 规则
  • 所有测试必须保持通过
  • 进行小幅渐进式修改
  • 每次重构后都提交

6. AAA 模式

每个测试都遵循以下步骤:

步骤目的
Arrange准备测试数据
Act执行待测代码
Assert验证预期结果

7. 何时使用 TDD

场景TDD 价值
新功能高
修复 Bug高(先编写测试)
复杂逻辑高
探索性开发低(先进行试验性开发,再使用 TDD)
UI 布局低

8. 测试优先级

优先级测试类型
1正常流程
2错误情况
3边界情况
4性能

9. 反模式

❌ 不要✅ 应该
跳过 RED 阶段先观察测试失败
之后再写测试先写测试
一开始就过度设计保持简单
包含多个断言每个测试只测一种行为
测试实现细节测试行为

10. AI 辅助 TDD

多 Agent 模式
Agent职责
Agent A编写失败测试(RED)
Agent B实现代码以通过测试(GREEN)
Agent C优化(REFACTOR)

请记住: 测试就是规范。如果你无法编写测试,就说明你还不理解需求。

评论

支持 Markdown