SuperAPI AI 工具集

verify-test-cases

测试与质量

查看项目

更新于 10-16 01:19

技能介绍

用途:校验自基线分支(base branch)分叉以来所有被修改的测试文件,检查测试用例是否合理、是否存在重复,并在用例确定后执行覆盖率门槛检查。

主要能力:

  1. 确定基线分支:若当前目录存在 .agent 文件,读取其中的 baseBranch=<value>;否则默认 main。用 git diff --name-only <base-branch>...HEAD 列出改动文件,并按 .test.、.spec.、test_.py、_test.py、_test.go、_test.rs、tests/、tests/、test/、spec/ 等模式筛选测试文件。无测试文件改动则告知并停止。
  2. 分析测试文件:1–2 个文件直接分析;3–5 个文件生成 2 个审查 agent;6 个及以上生成 3 个。使用 TeamCreate(名称 verify-tests)与 TaskCreate 分配任务,通过 Task 工具(subagent_type: general-purpose、run_in_background: true)并行审查,完成后汇总并清理团队。
  3. 核查内容:用例名与行为是否一致、断言是否有意义(非仅 toBeTruthy)、边界条件、mock/fixture 合理性、setup/teardown、用例独立性与顺序依赖、是否匹配源码;查找完全重复、逻辑重复与冗余断言。
  4. 输出格式为“Test Verification Report”,含 Files Analyzed、Issues Found(Nonsensical/Incorrect Tests、Duplicate Tests、Missing Coverage)与 Summary(文件数、用例数、问题数、重复数、结论 PASS / NEEDS ATTENTION)。
  5. 覆盖率门槛:等待用户明确确认用例工作完成;若无 package.json 则说明无法运行并停止。Node.js 项目优先使用 package.json 中 test:coverage 脚本,否则按依赖识别 Vitest(npx vitest run --coverage)或 Jest(npx jest --coverage),或其它明确带覆盖率的脚本;运行失败则修正测试并重复运行直至成功。

限制:资料未提供支持的其它语言覆盖率方案;无法识别的覆盖率命令需明确告知;导入文件缺失时仅标注并继续;超过 500 行的大文件建议用 git diff 聚焦改动段。