SuperAPI AI 工具集

rlm-tdd

测试与质量

查看项目

更新于 10-16 08:36

技能介绍

rlm-tdd 用于 RLM Phase 3(实现)中的全部编码工作,核心原则是:如果没看到测试失败,就不知道测试测的是不是正确的东西。铁律为「没有失败的测试,不写生产代码」(NO PRODUCTION CODE WITHOUT A FAILING TEST FIRST)。

用途与适用范围:新功能、缺陷修复、重构、行为变更都要用;官方强调没有例外,不因「改动简单」「时间紧张」「事后补测试效果一样」而跳过。

主要能力:强制 RED-GREEN-REFACTOR 循环。RED 阶段写一个最小失败测试,每个测试只验证一种行为、名称清晰、测真实代码而非 mock、断言明确;随后必须运行测试并观察其失败,例如 npm test path/to/test.test.ts,确认失败原因符合预期而非报错或拼写问题。GREEN 阶段只写让测试通过的最少代码,不加额外功能、不做顺手改进、暂不重构。REFACTOR 阶段在测试保持通过的前提下消除重复、改进命名、抽取辅助函数,且不得添加行为。每个阶段都要在 Phase 3 工件中记录命令、预期与实际输出、结果与时间戳。

对缺陷修复:先加能复现缺陷的回归测试,确认其以预期错误失败,再实现最小修复,最后运行完整测试套件确认无回归。技能还提供 Coverage Gate 与 Approval Gate 检查项,包括每个新函数有对应测试、每个修复有先失败后通过的回归测试、所有 RED 阶段记录失败输出、所有测试通过且无跳过、无先于失败测试的生产代码,最终标记 TDD Compliance 与 Approval 为 PASS/FAIL。

触发示例:为某次运行实现 Phase 3、先加失败回归测试再修缺陷、已经写完代码要求补测试(会触发 TDD 重置指引)、要求遵循 RED-GREEN-REFACTOR。

限制与风险提示:若出现代码先于测试、测试立即通过、打算稍后补测试、无法解释测试为何失败、测试 mock 行为而非真实行为、一个测试含多种行为等情况,应删除代码并重新按 TDD 开始。具体命令、测试路径、时间戳和所用测试框架需依据实际项目,资料未提供通用安装方式或对其他语言的适配说明。