SuperAPI AI 工具集

test-driven-development

测试与质量

查看项目

更新于 10-16 09:28

技能介绍

用途:该技能用于行为变更场景,即可以用可重复的测试来演示需求或复现缺陷时。使用前应先检查仓库的测试运行器和现有覆盖情况。对于文案、生成产物或低影响配置,应使用相应的聚焦验证方式,而非强行制造单元测试。

主要能力与流程:核心是红-绿-重构循环。RED 阶段编写一个最小的失败测试,要求单一行为、名称清晰、测试真实代码(除非不可避免,否则不用 mock)。随后必须验证 RED:运行测试(如 npm test path/to/test.test.ts),确认测试失败而非报错、失败原因符合预期、且是因功能缺失而非拼写错误。GREEN 阶段编写通过测试的最简代码,不添加额外功能或提前重构。之后必须验证 GREEN:确认该测试通过、其他测试仍通过、输出无错误无警告。REFACTOR 阶段仅在绿灯后进行,去除重复、改进命名、抽取辅助代码,并保持测试绿灯,不新增行为,然后进入下一个失败测试。

保留既有工作:可行时先编写失败的回归测试再修复,并验证其因预期原因失败。若实现已存在,应保留并添加特征化/回归测试,不删除用户工作、不重置分支或重写可运行代码。应如实说明测试是否先于修复。

适用场景:功能或缺陷修复的行为变更;调试集成时,发现缺陷先写复现它的失败测试。当测试无法合理触发失败时,改用其他明确的验证器。

限制:通过的单元测试不能证明浏览器、打包运行时或第三方提供方的集成行为。重试示例假设操作可安全重试,生产重试需要明确的幂等、取消与可重试错误策略。测试先行不能防止需求错误或过度 mock。应保留无关改动,并使用项目现有的测试命令,而非假设所有 npm test 都接受相同参数。

使用方式相关事实:文档未提供该技能的安装命令或具体调用方式,暂未提供。