SuperAPI AI 工具集

test-first-discipline

测试与质量

查看项目

更新于 10-15 21:47

技能介绍

用途:这是内部共享技能,作为“失败测试优先”实现顺序的唯一事实来源。宿主需在依赖中声明它,缺失时应中止,不做静默回退。名称有意不叫 tdd 或 test-driven-development,仅使用本名。

核心规则(铁律):未先观察到失败测试,不得编写生产行为代码。步骤为:先写失败测试或等效的自动化失败检查;在当前会话中运行并观察失败;编写通过测试所需的最小生产代码;重新运行,保持绿色后再按需重构。若在第2步之前已写生产行为代码,必须删除并从失败测试重新开始,不得保留为“参考”或“边写测试边改”。

适用范围:新功能、缺陷修复、影响行为的重构。例外(除非用户另有要求):一次性原型、生成代码、无被测行为的纯配置、纯文档、用户明确跳过并记录简短原因。禁止无例外或用户跳过时以“就这一次”为由跳过。

与 test-suite-ensure 的区别:本技能负责顺序,即生产行为代码之前先红;test-suite-ensure 负责事后检测技术栈、搭建脚手架、为既有逻辑生成并运行覆盖率。test-suite-ensure 全绿不得报告为符合本技能。两者并用时,行为实现期间遵循本技能,之后用 test-suite-ensure 补缺口或脚手架。

禁止事项:仅事后运行 test-suite-ensure 就声称符合测试优先;在本仓库内将本技能改名或别名为 tdd / test-driven-development;对正常行为变更跳过观察失败步骤而无例外或用户跳过。

集成方式:宿主在执行阶段用一行指针加载本技能用于行为变更,并将 test-suite-ensure 保留为独立的事后确保步骤。建议设为用户不可直接调用,用户通过 PDCA 宿主触达。可与 completion-evidence-discipline 组合:声称红/绿时,观察到的失败与后续通过运行必须是新鲜证据。