测试驱动开发工作流Skill tdd-workflow

测试驱动开发(TDD)是一种软件开发方法,强调先写测试再写代码,通过RED-GREEN-REFACTOR循环确保代码质量和行为正确。关键词:测试驱动开发、TDD、RED-GREEN-REFACTOR、软件开发、测试、代码质量、自动化测试、敏捷开发。

测试 0 次安装 0 次浏览 更新于 3/21/2026

name: tdd-workflow description: 测试驱动开发工作流原则。RED-GREEN-REFACTOR 循环。 allowed-tools: 读取、写入、编辑、全局搜索、查找、Bash

TDD 工作流

先写测试,再写代码。


1. TDD 循环

🔴 RED → 写失败测试
    ↓
🟢 GREEN → 写最少代码以通过
    ↓
🔵 REFACTOR → 改进代码质量
    ↓
   重复...

2. TDD 的三定律

  1. 只写生产代码来使失败测试通过
  2. 只写足够的测试来展示失败
  3. 只写足够的代码来使测试通过

3. RED 阶段原则

写什么

焦点 例子
行为 “应该将两个数字相加”
边缘情况 “应该处理空输入”
错误状态 “应该为无效数据抛出异常”

RED 阶段规则

  • 测试必须先失败
  • 测试名称描述预期行为
  • 每个测试一个断言(理想情况下)

4. GREEN 阶段原则

最少代码

原则 含义
YAGNI 你不会需要它
最简单的事 写最少代码以通过
不优化 只管让它工作

GREEN 阶段规则

  • 不写不需要的代码
  • 暂时不优化
  • 通过测试,不多不少

5. REFACTOR 阶段原则

改进什么

领域 动作
重复代码 提取公共代码
命名 使意图清晰
结构 改进组织
复杂性 简化逻辑

REFACTOR 规则

  • 所有测试必须保持通过
  • 小步增量更改
  • 每次重构后提交

6. AAA 模式

每个测试遵循:

步骤 目的
准备 设置测试数据
执行 执行被测试代码
断言 验证预期结果

7. 何时使用 TDD

场景 TDD 价值
新功能
错误修复 高(先写测试)
复杂逻辑
探索性工作 低(先探索,再TDD)
UI 布局

8. 测试优先级

优先级 测试类型
1 快乐路径
2 错误案例
3 边缘案例
4 性能

9. 反模式

❌ 不要做 ✅ 要做
跳过 RED 阶段 先看测试失败
测试后写 测试前写
过度设计初始代码 保持简单
多个断言 每个测试一个行为
测试实现 测试行为

10. AI 增强 TDD

多智能体模式

智能体 角色
智能体 A 写失败测试(RED)
智能体 B 实现以通过(GREEN)
智能体 C 优化(REFACTOR)

记住: 测试就是规格说明。如果你不能写测试,说明你不理解需求。