Audit Test 是一个测试质量治理工具,核心是“三种模式、一条价值门槛”。它适用于编写、修改、审查或清理测试的场景,目标是让测试真正保护可观察行为、可信回归或独立契约,而不是复述实现细节。
用途
- 编写模式:在新增或修改测试时设置准入门槛,拦截低价值测试。
- 审计模式:定向扫描并清理那些重复断言源码、与更强证明重复、把行为耦合到实现、或仅为维持测试专用生产接缝而存在的测试。
- 战役模式:按子系统(一个包、插件或核心区域拥有的全部测试文件)整体梳理测试面;开始前需先阅读 CAMPAIGN.md。
主要能力
- 四问准入清单:新增测试前须回答它保护什么可观察行为/不变量/独立契约、什么可信回归会让它失败、现有覆盖为何抓不到该失败、是否需要生产调用方并不需要的生产接缝;缺少答案则暂不添加。
- 垃圾测试模式清单:包括无断言的覆盖探测、自我比较与同一性复制、复制的夹具/清单/导出列表、精确源码或字符串 grep、在真实边界重复的私有谓词或调用形状测试、同一契约的重复调用、仅用于保留测试专用导出/全局/包装器的测试、唯一调用方是测试的死代码、由被测辅助函数或渲染器生成的期望值、实现被断言行为的 mock、提供本应由所有者产生的回执/准入/回调顺序的夹具、仅复述声明标志的能力测试、因无关原因通过的负向对照、名称或夹具承诺超出输入实际验证范围等。
- 保留标准:独立执行公共 API、SDK、协议、配置、迁移、存储、安全、平台、默认值、生成输出、包、发布或架构契约的测试应保留;可观察的调用顺序、具有可信失败模式的回归、作为最廉价独立守卫的源码检查也应保留。静态或慢不是删除理由。
- 候选证据:编辑前需记录测试名称与位置、能检测的实际失败、覆盖接缝的非测试调用方、更强的所有者边界证明或无需证明的理由、相关历史、可解锁的生产/测试支持删除、风险与聚焦验证命令。
- 编辑与验证:按单一所有者边界批次删除过时的测试专用导出、全局、包装器与死路径,将保留的回归移到规范所有者,合并重复的包或依赖断言;优先净减少生产代码行数。验证需使用仓库 AGENTS.md、CLAUDE.md 或包脚本中记录的测试命令,运行最小所有者与兄弟测试、针对性格式化、git diff --check、仓库策略要求的变更文件门禁,并分别报告生产/工具与测试的行数变化;最终编辑后对删除的覆盖做独立复审。
- 落地与交接:仅在获得授权后提交、推送、开 PR 或合并,遵循仓库 PR 流程;一次落地一个连贯 PR,之后从最新 main 刷新并重新做只读发现。交接需报告根因与移除的低价值类别、生产所有者简化、保留的误报及理由、实际运行的聚焦与完整证明、生产与测试行数、PR 与合并状态、后续事项。
使用方式
- 以技能形式调用,具体安装与集成方式资料未提供。使用时先阅读根目录与作用域的 AGENTS.md,发现阶段保持只读并先报告证据再编辑;不在测试 watcher 运行时编辑源码或测试。
适用场景
- 新增或改动测试时的准入审查、存量测试的价值审计与清理、按子系统整体梳理测试面、以及回归测试的规范化迁移。
限制
- 工具明确要求不得为增加删除数量而把不确定候选转为清理;行为保持的重构下会失败的测试应视为可疑而非自动删除;资料未提供具体平台支持、收费方式与安装命令。