SuperAPI AI 工具集

testing-gh-skills

测试与质量

查看项目

更新于 10-15 08:08

技能介绍

用途

该技能用于对全部 GitHub CLI 搜索类技能执行一套完整的自动化测试。它本身是一个测试编排入口,而不是搜索功能。核心定位是:仅在用户显式触发时运行,避免在无关对话中被自动调用。

触发条件

仅在以下情况调用:

  • 用户显式运行 /test-gh-skills 斜杠命令
  • 用户明确请求“运行完整测试套件”或“执行全部测试”

以下情况不调用:用户泛泛询问测试、询问如何测试、在任意语境中提到“test”、或认为测试可能有帮助。原因是一次完整运行约需 8 分钟并消耗 80 次 Claude API 调用,成本较高。

主要能力

  • 通过 Python 编排器 run-all-tests.py 解析 testing/scenarios/ 下的全部场景文件。
  • 以并行工作池执行测试,默认 4 个 worker,可配置。
  • 每个测试在全新 Claude 会话中运行,仅接收用户请求(通过 run-single-test.sh),不向被测对象泄露测试标准。
  • 对响应进行校验并生成多级报告。
  • 测试完成后自动以无头方式调用 test-reviewer 智能体,生成 REVIEWER-NOTES.md。

测试分组(共 80 个测试,6 组)

  • gh-cli-setup-tests(10 个):安装、认证、故障排查
  • gh-search-code-tests(15 个):按扩展名、语言、排除项进行代码搜索
  • gh-search-commits-tests(10 个):按作者、日期、哈希搜索提交
  • gh-search-issues-tests(20 个):按标签、负责人、状态搜索议题
  • gh-search-prs-tests(15 个):按评审、草稿、检查搜索 PR
  • gh-search-repos-tests(10 个):按星标、主题、许可证搜索仓库

使用方式

  1. 运行测试套件: python3 testing/scripts/run-all-tests.py

    选项:

    • --workers N:并行 worker 数量(默认 4)
    • --no-review:跳过自动 test-reviewer 智能体执行

    示例:

    默认设置(4 个 worker,含评审)

    python3 testing/scripts/run-all-tests.py

    使用 8 个并行 worker

    python3 testing/scripts/run-all-tests.py --workers 8

    不进行自动评审

    python3 testing/scripts/run-all-tests.py --no-review

  2. 查看结果:报告输出到 ./testing/reports/yyyy-mm-dd_{COUNT}/ 下。

报告结构(四级)

  • 一级:总报告 REPORT.md,包含总体通过/失败汇总、按组结果、失败测试详情、执行时间。
  • 二级:分组报告 {group-name}/REPORT.md,包含组内汇总与逐项结果。
  • 三级:单个测试报告 {test-number}.md,包含测试详情、完整响应、校验结果与通过/失败原因。
  • 四级:评审分析 REVIEWER-NOTES.md,由 test-reviewer 智能体自动生成,包含生产就绪度评估、结果概览表、失败模式与根因、按组详细分析、优先级建议(高/中/低)与后续步骤。

工作原理

  • run-all-tests.py:发现并解析场景文件,并行执行测试,校验响应,生成三级报告,统计耗时与通过/失败数据,写入测试报告目录,并自动调用 test-reviewer 智能体;支持 --workers N 与 --no-review。
  • run-single-test.sh:接收用户请求作为参数,以最小工具集(Read、Skill)执行 Claude CLI,禁用情景记忆以加速,绕过权限提示,要求简洁输出(仅命令),返回 stdout/stderr 供校验。

校验范围

测试覆盖语法(标志用法、命令结构、限定符语法)、引号处理(多词查询、比较运算符、含空格标签)、排除项(-- 标志、PowerShell --%、引号内排除)、特殊值(@me 语法、ISO8601 日期、比较运算符)、平台差异(Unix/Linux/Mac 与 PowerShell)、边界情况以及技能用法(验证 gh search 命令与 gh 子命令)。

成功标准

  • 全部 80 个测试无错误执行
  • 通过率达到 75% 以上(当前基线 73.8%)
  • 生成总报告、全部分组报告与单个测试报告
  • 无测试超时或崩溃
  • 目标通过率为 90% 以上

常见问题

  • 测试未运行:确认已安装 Python 3、场景文件存在、run-single-test.sh 可执行、Claude CLI 已安装。
  • 测试超时:确认脚本中已禁用情景记忆、权限模式为 bypassPermissions,必要时增大超时(当前 120 秒)。
  • 报告未生成:检查写入权限与目录是否存在,查看 Python 错误。
  • 通过率低:查看单个测试报告找规律,确认技能是否近期修改,核对测试标准与技能文档是否一致。

相关文档

  • 测试基础设施:testing/README.md
  • 测试编排器:testing/scripts/run-all-tests.py
  • 单测运行器:testing/scripts/run-single-test.sh
  • 测试评审智能体:agents/test-reviewer.md
  • 测试场景:testing/scenarios/*.md
  • 被测技能:skills/gh-search-*/SKILL.md、skills/gh-cli-setup/SKILL.md

限制

该技能仅限显式调用,不应自动运行;完整执行成本较高(约 8 分钟、80 次 API 调用,并行执行约 2-3 分钟)。关于收费标准、具体价格与平台支持范围,资料中暂未提供。