Claude Code + GLM-5 深度赋能测试:开发 8 大 Skill 构建 AI 测试助手集群

基于已有实践和行业趋势,Claude Code + GLM-5 在测试领域的作用可以概括为三大方向:自动化生成、智能分析、流程编排。围绕这些方向,可以开发一系列 Skill 来辅助测试工作,大幅提升效率与质量。

一、核心作用

  1. 自动化测试资产生成

    从接口文档(YAML/OpenAPI)、需求描述甚至录制的流量,一键生成符合团队规范的自动化脚本、测试数据、用例框架。

    你的实践:输入 YAML 自动生成 Python + Requests + Pytest 全套项目。

  2. 智能缺陷分析与自愈

    当测试失败时,AI 自动分析日志、错误堆栈,推断根因(环境/数据/代码缺陷),并尝试给出修复建议或直接修正脚本。

    你的实践:脚本生成后自动验证、修正直到通过。

  3. 测试策略与用例设计

    根据产品特性(如大模型应用、RAG系统、智能体)自动设计测试维度、评测指标、对抗用例,覆盖功能、性能、安全、偏见等维度。

  4. 可观测性增强

    解析 LLM 调用日志、Agent 执行链路,生成可视化报告或诊断结论,辅助定位性能瓶颈与异常行为。

    你的实践:Office Claw 的 LLM_IO_TRACE 解析与可视化。

  5. 流程衔接与 CI/CD 编排

    自动生成流水线配置、多环境切换脚本、报告聚合方案,让测试从"一次性"变为"持续运行"。

二、可开发的 Skill 类型及说明

1. api-auto-gen(接口自动化全自动生成)

输入 :OpenAPI/Swagger YAML 文件、环境地址

输出 :完整的 pytest 项目(含 BaseRequest、数据驱动、业务流、报告、CI 配置)

自愈闭环:生成后自动验证并修正,直到全部用例通过。

2. test-case-designer(测试用例智能设计)

输入 :需求描述、接口文档、或 PRD 片段

输出 :按等价类/边界值/场景法生成结构化测试用例,支持 CSV/Markdown 输出

增强:针对 AI 产品自动设计对抗用例、偏见测试、多轮对话场景。

3. failure-analyst(失败分析助手)

输入 :pytest 错误日志、接口响应、环境信息

输出 :根因分类(业务缺陷/数据问题/环境不稳定)、修复建议、相关代码补丁

联动:可自动在 Jira/禅道创建缺陷,并附上分析报告。

4. llm-trace-analyzer(LLM 链路分析器)

输入 :LLM_IO_TRACE 日志、Agent 运行记录

输出 :调用链路可视化、耗时分布、工具调用成功率、异常模式识别

作用:将 Agent 黑盒变白盒,快速定位幻觉、超时、无效调用。

5. perf-bench-generator(性能脚本生成器)

输入 :接口文档、压测目标(QPS、并发数)

输出 :Locust/JMeter 脚本、压测方案、结果分析模板

进阶:结合历史基线自动判断性能衰退。

6. data-factory(测试数据工厂)

输入 :数据模型(YAML/SQL)、生成规则

输出 :动态生成符合业务逻辑的测试数据,并支持自动清理

联动:与接口用例结合,实现"数据准备-执行-断言-清理"全自动。

7. ci-orchestrator(CI/CD 配置生成器)

输入 :项目技术栈、环境拓扑

输出 :GitHub Actions/GitLab CI 脚本、多环境部署配置、报告归档策略

亮点:自动感知测试范围变化,智能选择执行子集。

8. knowledge-sync(经验沉淀器)

输入 :缺陷记录、代码 review 意见、规范变更

输出 :更新团队知识库、编码规范文档、skill 生成规则

作用:让 AI 的生成质量随着项目推进持续进化。


三、你已具备的 Skill 雏形

  • enterprise-api-test-gen → 可进化为 api-auto-gen

  • self-healing-api-gen → 已具备自愈闭环

  • 可组合上述几个 Skill,形成一个 "测试智能体矩阵" ,覆盖从需求分析到上线的全生命周期。

四. 八大核心 Skill 详解(含开发模板与使用实例)

4.1 api-auto-gen ------ 接口自动化全自动生成 + 自愈

作用:输入 OpenAPI YAML,输出完整的 pytest 项目,并自动验证修正。

Skill 模板(已实战验证):

bash 复制代码
# 全自动接口自动化生成器
目标:根据 `api.yaml` 生成完整可运行的 Python 接口测试项目。
流程:
1. 解析 YAML,规划单接口用例和业务流用例。
2. 生成所有文件,必须使用 BaseRequest、数据驱动、config 环境切换。
3. 输出后提示用户运行验证脚本 `validate_and_run.py`。
4. 根据返回的 JSON 自动修正,直到通过。
铁律:不允许直接使用 requests,必须从 config 获取 base_url。

配套验证脚本 scripts/validate_and_run.py,用于形成闭环。

使用方式

bash 复制代码
claude
@api-auto-gen 请使用 docs/api.yaml 生成项目并保证全部用例通过。

4.2 test-case-designer ------ 智能测试用例设计

作用:根据需求描述或接口文档,自动生成结构化测试用例(支持 CSV/Markdown/TestLink)。

Skill 模板

bash 复制代码
# 测试用例设计师
输入:接口文档(YAML)或功能描述。
输出:等价类、边界值、异常场景用例,以 markdown 表格输出。
附加:对于 AI 产品,增加对抗、偏见、多轮一致性用例。

使用实例

bash 复制代码
@test-case-designer 根据 docs/api.yaml 中的登录接口,设计全面测试用例,包括安全测试。

Claude 将输出一张包含用例编号、前置条件、输入数据、预期结果的表格,可直接导入管理工具。

4.3 failure-analyst ------ 失败分析助手

作用:分析 pytest 报错或日志,给出根因和修复建议,甚至自动创建缺陷。

Skill 模板

bash 复制代码
# 失败分析专家
输入:测试错误日志、环境信息。
输出:
- 根因分类(环境/数据/代码缺陷)
- 详细分析
- 修复建议代码(如有)
- 自动创建 Jira Issue(可选)

使用

配合 conftest.py 中的钩子,可在测试失败时自动调用该 Skill。

4.4 llm-trace-analyzer ------ LLM 链路分析器

作用:解析 LLM_IO_TRACE 等日志,重建 Agent 调用链路,输出耗时分析和可视化报告。

Skill 模板

bash 复制代码
# LLM 链路分析
输入:LLM_IO_TRACE 日志文件路径。
输出:
- 迭代数、每轮 LLM 耗时、Tool 耗时
- 调用流程图(mermaid 格式)
- 性能瓶颈定位
- 异常模型行为(如无效工具调用、重复请求)

使用

bash 复制代码
@llm-trace-analyzer 分析 logs/llm_trace.json 并输出可视化报告。

4.5 perf-bench-generator ------ 性能测试脚本生成

作用:根据接口文档自动生成 Locust 或 JMeter 压测脚本和压测方案。

Skill 模板

bash 复制代码
# 性能脚本生成器
输入:接口 YAML、目标 QPS、并发数。
输出:locustfile.py 和一份压测计划(包含指标目标)。

.6 data-factory ------ 智能数据工厂

作用:根据数据模型生成符合业务逻辑的动态测试数据,并自动清理。

Skill 模板

bash 复制代码
# 数据工厂
输入:实体定义(如用户表字段)和生成数量。
输出:Python 脚本,使用 Faker + 自定义规则生成数据,支持环境隔离和自动清理。

4.7 ci-orchestrator ------ CI/CD 配置生成器

作用:一键生成完整的流水线配置文件,集成上述所有 Skill 和报告。

Skill 模板

bash 复制代码
# CI 编排器
输入:项目技术栈、测试阶段(冒烟/回归/全量)。
输出:GitHub Actions / GitLab CI 配置,包含 lint、test、report、artifact 上传步骤。

4.8 knowledge-sync ------ 经验沉淀与进化

作用:将发现的 Bug 模式、代码 review 意见等沉淀为规则,反哺其他 Skill。

Skill 模板

bash 复制代码
# 知识同步器
输入:缺陷描述、修复方案、规范变更。
输出:更新 `specs/coding_standard.md`、Skill 约束规则、测试数据模板。

五. Skill 组合实战:打通全流程自动化

我们可通过一个主控 Skill 或 Shell 脚本来串联它们,实现 "需求提交 → 自动设计用例 → 生成脚本 → 执行测试 → 失败分析 → 生成报告" 的完整闭环。

5.1 主控脚本示例(run_ai_test.sh

bash 复制代码
# 1. 让 Claude 执行用例设计
claude run "@test-case-designer 根据 docs/api.yaml 生成用例,保存到 testcases.md"

# 2. 执行接口自动化生成
claude run "@api-auto-gen 使用 docs/api.yaml 生成项目并验证通过"

# 3. 运行测试(本地)
pytest --alluredir=reports/allure-results

# 4. 如果失败,自动调用分析
if [ $? -ne 0 ]; then
    claude run "@failure-analyst 分析 $(cat reports/latest.log)"
fi

# 5. 生成 Allure 报告
allure generate reports/allure-results -o reports/allure-report --clean

5.2 集成到 GitHub Actions

bash 复制代码
- name: AI-Assisted Test Generation & Execution
  run: bash run_ai_test.sh
- name: Upload Report
  uses: actions/upload-artifact@v4
  with:
    name: test-report
    path: reports/allure-report

六. 关键支撑:让 Skill 自愈的验证脚本

api-auto-gen 等生成型 Skill 提供自动验证能力,创建 scripts/validate_and_run.py

python 复制代码
import subprocess, sys, json
from pathlib import Path

ROOT = Path(__file__).parent.parent

def run(cmd):
    r = subprocess.run(cmd, shell=True, capture_output=True, text=True, cwd=ROOT)
    return r.returncode, r.stdout, r.stderr

def main():
    report = {"passed": False, "checks": []}
    # ruff 检查
    code, out, err = run("ruff check tests/ common/")
    report["checks"].append({"name": "ruff", "status": "pass" if code == 0 else "fail", "detail": err[-500:] if code != 0 else ""})
    # BaseRequest 强制检查
    code2, out2, _ = run(f"python {ROOT}/scripts/check_base_request.py")
    report["checks"].append({"name": "BaseRequest", "status": "pass" if code2 == 0 else "fail", "detail": out2[-500:] if code2 != 0 else ""})
    # 用例收集
    code3, out3, err3 = run("pytest --collect-only -q")
    report["checks"].append({"name": "collection", "status": "pass" if code3 == 0 else "fail", "detail": (out3+err3)[-500:] if code3 != 0 else ""})
    # 执行
    code4, out4, err4 = run("pytest -m smoke --tb=short")
    report["checks"].append({"name": "execution", "status": "pass" if code4 == 0 else "fail", "detail": (out4+err4)[-1000:] if code4 != 0 else ""})
    report["passed"] = all(c["status"] == "pass" for c in report["checks"])
    print(json.dumps(report, indent=2, ensure_ascii=False))
    sys.exit(0 if report["passed"] else 1)

if __name__ == "__main__":
    main()

将该脚本集成到 Skill 的闭环中,AI 便拥有了自我纠错的能力。

. 总结:从单点到体系,释放 AI 测试的最大价值

通过开发上述 8 个 Skill,你将得到:

  • 效率飞轮:接口自动化开发时间从小时级→分钟级,用例设计从半天→秒级。

  • 质量闭环:生成即验证,失败即分析,知识即沉淀。

  • 全栈覆盖:从需求、设计、执行、分析到报告,AI 全程参与。

  • 持续进化:随着项目数据积累,Skill 的输出质量和规范贴合度将越来越高。

现在,你只需要准备好接口文档,打开终端对 Claude 说一句:

bash 复制代码
@api-auto-gen 用 api.yaml 生成全套自动化,然后 @test-case-designer 再帮我设计安全用例。

你的 AI 测试助手便会开始工作。整套代码已开源在 你的 GitHub 仓库,欢迎 Star 与实践反馈。

七、总结

Claude Code + GLM-5 在测试领域不只是"写代码",而是可以成为一个 7×24 小时的 AI 测试架构师 ,负责生成、分析、优化、沉淀。

你目前的实践已经验证了它在接口自动化、AI Agent 测试中的巨大价值,接下来只需将这些能力封装为一个个可复用的 Skill,即可在团队中推广并形成技术壁垒。

相关推荐
数智化管理手记1 小时前
手工统计指标误差大、效率低?指标管理系统如何告别人工算数痛点?
大数据·运维·数据库·人工智能·云计算
fthux4 小时前
RenoPit 能为普通业主做什么?看懂图纸、审查合同,提前发现装修坑
javascript·人工智能·ai·开源·github·chrome扩展·open source·edge扩展·firefox扩展
火山引擎开发者社区7 小时前
火山引擎混合云 veStack 智算平台 Day0 适配 Kimi K3
人工智能
RSABLOCKCHAIN7 小时前
AI Agents in LangGraph-2
人工智能·python
cd_949217218 小时前
哪些AI工具适合生成游戏开发用的3D道具模型?从道具草稿到引擎测试的选择方法
人工智能·3d
FII工业富联科技服务8 小时前
工业设备运维如何Agentic化?拆解Factory Brain的设备运维架构
大数据·运维·人工智能·架构·制造
WA内核拾荒者8 小时前
WhatsApp 账号异常检测的自动化告警系统设计
数据库·python·自动化
糖果店的幽灵8 小时前
人已经用 WorkBuddy 找工作拿了面试,你还在一份份手工改简历
人工智能·面试·职场和发展·langgraph
qq29539 小时前
2026 财搭子决策模拟器:多智能体投研架构能力拆解
大数据·人工智能·架构
码流怪侠9 小时前
【GitHub】Bend:让 GPU 并行编程像写 Python 一样简单
python·github