SuperAPI AI 工具集

test-quality-review

测试与质量

查看项目

更新于 11-01 14:09

技能介绍

用途

test-quality-review 用于审查项目中的测试质量,目标是识别冗余或薄弱的测试,并解释哪些测试提供了有用的、独特的需求覆盖或回归覆盖。它适用于任意语言和测试框架,不预先假定技术栈。默认只审查调用方选定的一份测试文件;若要扩大到更多范围,需先征求同意。

主要能力

  • 限定审查范围:从调用方明确给出的项目路径或工作目录确定目标,而非本技能的安装位置。读取项目内的说明文件,确认仓库、工作树状态、请求的变更和确切选择,并保留其他智能体正在进行的工作。
  • 识别测试结构:使用项目已有发现工具或直接查看文件,找出测试、fixture、hook、helper 和参数化用例;选择完整测试体并保留外层参数绑定。若发现不完整,应说明缺口,而不是声称清单详尽。
  • 分类判定:对每个测试识别其需求或独特回归、setup、可观察断言及相关既有覆盖,并给出一种判定:
    • Keep:断言能检测到独特的、受支持的行为失败。
    • Tighten:场景有价值,但断言薄弱、耦合不必要、setup 不现实或同步过度。
    • Remove candidate:存在空洞断言、mock 自检、表层存在性检查、过时路径,或已被保留覆盖等价证明。
    • Unresolved:必要证据缺失或已过期。
  • 冗余证明:判断冗余时需引用被保留的测试,并说明其输入、应用路径和断言能检测同一失败;相似标题或重叠代码行不构成证明。
  • 保护有价值细节:保留有意义的罕见错误、竞态、通信协议契约、无障碍与布局几何等覆盖;仅因为测试具体并不等于薄弱。
  • 可选决策 API 辅助:可使用可调用的系统一决策 API 对给定标准做分类决策。其提供方、模型、传输方式和请求格式不由本技能规定;需查看实际契约并使用调用方授权的设置。不可用时继续人工审查并说明该限制。默认首轮只请求判定;仅在被要求时,才用完整问题跟进被标记的候选,并保留首轮结果。决策标签不等同于有源码依据的解释;失败的调用、缺失上下文、过期哈希和格式错误响应均视为未解决。分数未校准,不是正确概率。

四条测试规则

  1. 每个新测试都要写明其需求或独特回归,并解释为何现有覆盖不足。
  2. 只使用模拟时间:测试中不得有真实时间 sleep 或有界的真实时间等待。
  3. 断言受支持的行为,而非附带的展示细节;有需求依据的几何、无障碍和布局稳定性属于有意义的行为。
  4. 在请求变更之外增加覆盖前先询问;一个有用的替代场景不能证明现有测试有价值。

使用方式

按三步进行:限定审查范围、检查并分类、解释并交回。最终产出一张紧凑表格,包含:测试/位置、需求或独特回归、判定、证据与理由、等价保留覆盖或缺失证据。引用断言和源码位置,明确区分决策 API 证据与人工发现。对拟新增或收紧的测试,说明现有覆盖为何不足以及提议是否落在授权变更内。完成标准是每个被选测试都有有依据的判定或明确的证据缺口,并附路径和后续动作;后续清理属于单独授权的工作,需做保留覆盖审查和针对性验证。包含源码的产物应保留在目标项目内并保持私密,新选择或新决策 API 身份应使用全新状态。

适用场景

适用于变更后评估所选测试是否仍具价值、发现空洞或 mock 自检式断言、识别重复覆盖,以及在保留关键回归、竞态、契约与无障碍覆盖的前提下精简测试集。需要证据不足或源码过期的测试时,会明确标为未解决。

限制

  • 默认只审查一份调用方选定的测试文件,扩大范围需显式同意。
  • 不假定任何语言或框架,因此依赖项目自身的发现工具或手动检查。
  • 决策 API 为可选项;提供方、模型和请求格式未作规定,不可用时只能人工审查。
  • 决策标签不是有源码依据的解释,分数也不是正确性概率。
  • 本技能只交回审查发现,不自动执行清理或修复。