SuperAPI AI 工具集

tdd-workflow

测试与质量

查看项目

更新于 10-24 07:31

技能介绍

TDD Workflow 是一个测试驱动开发(Test-Driven Development)技能,核心是“先写测试,再写代码”,并以 RED-GREEN-REFACTOR 循环作为工作主线。

一、用途 该技能用于在开发过程中落实测试驱动开发原则:用测试先行来明确需求与行为,通过最小实现驱动代码,并在测试保护下持续重构。资料强调“测试即规格”:如果写不出测试,说明还没有真正理解需求。

二、主要能力(原则与规则)

  1. TDD 循环:🔴 RED 写失败测试 → 🟢 GREEN 写最小代码使其通过 → 🔵 REFACTOR 改进代码质量 → 循环重复。
  2. TDD 三条法则:只为让失败测试通过而写生产代码;只写足以展示失败的测试;只写足以让测试通过的代码。
  3. RED 阶段:测试内容聚焦行为、边界情况和错误状态;规则包括测试必须先失败、测试名描述预期行为、理想情况下每个测试一个断言。
  4. GREEN 阶段:遵循 YAGNI,写通过测试所需的最少代码,不做优化;规则是不写不需要的代码、暂不优化、只求通过测试。
  5. REFACTOR 阶段:消除重复(提取公共代码)、改进命名使意图清晰、改善结构组织、简化复杂逻辑;规则是所有测试必须保持通过、小步增量修改、每次重构后提交。
  6. AAA 模式:每个测试按 Arrange(准备测试数据)、Act(执行被测代码)、Assert(验证预期结果)组织。
  7. 适用场景判断:新功能、缺陷修复(先写测试)、复杂逻辑价值高;探索性开发价值低(可先 spike 再 TDD);UI 布局价值低。
  8. 测试优先级:1 正常路径(happy path)、2 错误情况、3 边界情况、4 性能。
  9. 反模式对照:不要跳过 RED 阶段,要观察测试先失败;不要事后补测试,要先写测试;不要过度设计初始实现,要保持简单;不要多个断言堆在一个测试里,一个测试对应一个行为;不要测试实现细节,要测试行为。
  10. AI 增强 TDD 的多智能体模式:Agent A 写失败测试(RED),Agent B 实现使测试通过(GREEN),Agent C 做优化(REFACTOR)。

三、使用方式 资料以工作流原则和规则清单的形式给出,未提供安装命令、运行方式或具体工具接口,暂未提供。可按 RED-GREEN-REFACTOR 循环及其阶段规则组织日常开发流程,也可参照多智能体分工模式安排协作。

四、适用场景与限制 适用于需要明确行为规格和回归保护的新功能开发、缺陷修复、复杂逻辑实现,以及用 AI 智能体辅助开发的流程编排。对于探索性原型和 UI 布局类工作,资料认为 TDD 价值较低。该技能本身是原则性指导,具体技术栈、测试框架与执行方式暂未提供。