SuperAPI AI 工具集

test-audit

测试与质量

查看项目

更新于 10-16 06:17

技能介绍

用途:审计测试是否能在其声称保护的行为被破坏时仍然保持绿色。评估对象是行为而非作者、mock 数量、断言数量或某个目标命中率。默认执行只读审计,仅在被要求时才修改测试或生产代码。改自 OpenClaw test-audit 技能(MIT)。

判定分类:对声称无效(行为被替换、从未到达,或与可失败的判定脱节)、部分有效、未强制执行(未收集、跳过或不在阻塞门禁中)、冗余、在其范围内充分、未定论。缺失额外边界用例不等于现有测试有缺陷;须将质量发现绑定到既有声称、文档化契约或误导性断言,并区分单个测试弱点与整套覆盖缺口。

流程:先建立范围与执行(读仓库说明、运行器配置、共享 fixture、CI 命令,记录聚焦命令和完成门禁,判断哪些测试被收集、执行并阻塞合并)。再按行为发现:对每个测试追踪声称、真实主体、输入、判定来源、判读结果和反例,声明断言充分前先构造具体反例,检查正向与负向测试。随后运行本技能目录下的检测脚本作为额外线索(需 Python 3.11+ 标准库):weak_negatives.py、duplicate_tests.py、junit_census.py、guard_pins.py、pytest_reach_probe.py,脚本输出写入临时目录,审计仓库根目录作为工作目录,使用仓库固定工具链。确认回归敏感度时,静态证据明确可标为源确认,否则反例在执行前为推断;高影响或不确定发现可在隔离副本中做聚焦变异,不得改动用户检出。最后报告可执行证据:精确测试名与 file:line、相关生产位置、声称行为、真实主体、输入/断言/判读缺陷、存活回归与保留保护、证据状态、命令与结果、未解决限制、单测与全套范围、修复方向。

限制:检测器有盲点且状态 2 表示已知不完整输入,需人工阅读源码;无命中仅表示不匹配其规则,仍要继续语义抽样。不得从定向样例推断全套普遍性,不应为凑 10–20% 等预期比例调整发现。报告需列出未运行的命令及原因。