Autoloop TDD
精选按需触发测试最多 12 轮
关于 Autoloop TDD
该循环由手动触发,最多运行 12 轮,按测试先行的方式实现目标行为。每一轮依次写出失败的测试、让测试套件转绿,再在保持通过的前提下重构。
主要功能
- 01每轮固定为红、绿、重构的顺序
- 02先单独运行新测试,再运行完整测试套件
- 03重构后重新运行全部测试
- 04手动触发,最多 12 轮
适用场景
- 01以测试先行的方式开发新功能
- 02为缺陷先写出可复现的失败测试再修复
- 03在测试保护下整理刚完成的实现
- 目标
- 目标行为以测试先行的方式实现,且测试套件全部通过。
- 退出条件
- 目标行为已有测试覆盖,且所有测试通过时停止。
- 每轮之间运行
- npm test
启动提示词
在 Claude Code 中粘贴运行,Agent 会按下面的步骤循环执行,直到满足退出条件。
prompt.md
开始运行“Autoloop TDD”循环。 目标:目标行为以测试先行的方式实现,且测试套件全部通过。 最大轮数:12。 第 1 步:编写失败的测试 — 为目标行为写一个新测试,并只运行这个测试。它应当因预期的原因而失败,否则需要先修正测试。 `npm test -- --testPathPattern=<new-test>` 第 2 步:确认转绿 — 写出刚好能让测试通过的最小实现,然后运行完整测试套件。新测试和既有测试都通过才算转绿。 `npm test` 第 3 步:重构 — 在不改变行为的前提下整理代码,再次运行完整测试套件。若出现失败,则撤回或修正重构,直到恢复全绿。 `npm test` 每轮之间运行:`npm test` 退出条件:目标行为已有测试覆盖,且所有测试通过时停止。
步骤
每一轮按顺序执行;未满足退出条件会进入下一轮,最多重复 12 轮。
01
编写失败的测试
为目标行为写一个新测试,并只运行这个测试。它应当因预期的原因而失败,否则需要先修正测试。
$
npm test -- --testPathPattern=<new-test>02
确认转绿
写出刚好能让测试通过的最小实现,然后运行完整测试套件。新测试和既有测试都通过才算转绿。
$
npm test03
重构
在不改变行为的前提下整理代码,再次运行完整测试套件。若出现失败,则撤回或修正重构,直到恢复全绿。
$
npm test未通过 → 下一轮满足条件即退出
支持的 Agent
可以直接运行这个 Loop 的编码 Agent。
Claude Code
Cursor
评论
支持 Markdown