SuperAPI AI 工具集

test-driven-development

测试与质量

查看项目

更新于 10-16 08:49

技能介绍

用途:在实现任何功能或修复缺陷之前,先编写测试并观察其失败,再写最小实现代码使其通过,最后重构。适用于新功能、缺陷修复、重构和行为变更;一次性原型、生成代码和配置文件可作为例外,但需征得人类伙伴同意。

主要能力:提供红-绿-重构循环的完整约束。RED:写一个最小测试,行为单一、命名清晰、使用真实代码(非必要不用 mock)。必须运行测试并确认它以预期原因失败。GREEN:只写通过测试所需的最简代码,不添加额外功能或改进。运行测试并确认通过,且其他测试仍全绿、输出干净。REFACTOR:仅在通过后清理重复、改进命名、抽取辅助函数,保持测试为绿,不新增行为。

使用方式:先写失败测试,运行 npm test path/to/test.test.ts 确认失败原因正确;再写最小实现,再次运行确认通过;然后重构并保持绿色,接着进入下一个测试。修复缺陷时,先写复现该缺陷的失败测试,再按 TDD 循环修复。

限制与红线:代码先于测试、测试立即通过、无法解释失败原因、事后补测试、以“仅此一次”“已手工测试”“保留作参考”等理由跳过,均属违规——应删除代码并重新开始。若难以测试,说明设计不清,应简化接口;若必须大量 mock,说明耦合过重,应改用依赖注入。未先看到测试失败,就无法确认测试是否测对了东西。资料未提供具体价格、平台或额外依赖信息,暂未提供。