软件工程
用测试驱动开发实现一个功能
小型、可上线的功能:行为由自动化测试指定,实现在测试通过时已重构。
流程
按这个顺序做。
- 把请求行为和验收标准转化为简短有序的测试用例清单,含失败和边界情况。
- 检查仓库测试约定,选择最小下一个行为,并用现有框架写一个聚焦测试。
- 运行该测试,确认它因预期原因失败,而不是设置或语法错误。
- 实现使新测试通过所需的最小生产代码,不做大范围无关变更。
- 先跑聚焦测试,再跑相关测试套件;继续前修复回归。
- 在套件保持绿色时重构代码和测试以提高清晰度并去重,然后在变更摘要中记录行为与证据。
先准备
猫会向你要的输入。
- 仓库或分支
- 功能行为与验收标准
- 测试命令或框架约定
路由器 + 一份 playbook
先路由。只选一份。
Cat Paw 每次任务只加载一份 playbook,不合并多份。先走这个路由器;其余路径是此 workflow 可检查的候选。
- 路由器:
engineering-pack skills/engineering/mattpocock/tdd/SKILL.mdskills/engineering/mattpocock/implement/SKILL.md
界限
界限跟着提示一起走。
- 不要仅为获得绿色运行而削弱或删除既有断言。
- 确认红色测试因预定缺失行为失败。
- 让每个循环限定在一个可观察行为,避免无关重构。
完成代表
一个可核对的终点。
新行为由先观察到失败的测试覆盖,实现与重构后所有相关测试通过,变更摘要说明已核验内容。
来源
这个流程从哪来。
来源确立 workflow 的模式。如有 Reddit 或社区帖子,视为实务轶事,不是普遍事实。