
导读 :前一个系列,我们用 AI + Agent Skill 把接口测试脚本"造"了出来。但脚本生成只是起点------真正让接口自动化测试产生价值的,是让脚本跑起来、修得好、清得净、出报告。
今天这篇文章,把接口测试"执行与报告生成"阶段最值得用的 6 款 Agent Skill 一次性讲透------每款 Skill 解决什么痛点、核心能力是什么、实战效果如何,一篇看完。
写在开头
先问大家一个问题:你的接口自动化测试,从"脚本写完"到"报告交付",中间要折腾多少步?
大概率是这样的------
- 脚本没有标签体系,想只跑 P0 用例,筛选不出来;
- 执行要记复杂的 pytest 命令参数,
-k、-m、--reruns拼错重来; - 跑完有失败用例,翻日志、查堆栈,花半天定位是环境问题还是数据问题;
- 定位完发现是数据污染,手动去数据库删测试订单、清 Redis 缓存;
- 清完想生成报告,Allure 原始数据有了,但老板看不懂,还得手写汇报;
- 下次发版,以上流程再走一遍......
如果以上场景你深有体会,那么今天这篇文章,你一定要看完------6 款 Agent Skill,覆盖"打标 → 执行 → 诊断 → 清理 → 报告 → 编排"全链路,让接口测试执行真正实现智能化、自动化、流水线化。
一、6 款 Skill 一览
先上一张全景图,让大家对接口自动化测试 Skill 体系有个整体认知(脚本生成、脚本增强相关在前一个系列):
bash
┌─────────────────────────────────────────────────────────────────┐
│ 接口测试执行与报告生成 · Skill 全景图 │
└─────────────────────────────────────────────────────────────────┘
api-test-tagger 脚本打标签,让用例可分类、可筛选
│
▼
api-test-executor 智能执行调度,说人话就能跑测试
│
├──▶ api-failure-diagnoser 失败智能诊断,脚本自己修好
│
├──▶ api-testdata-cleaner 测试数据清理,脏数据一键净空
│
▼
api-report-generator 智能报告生成,老板点赞的决策型报告
│
▼
api-pipeline-scheduler 全链路编排,一条指令跑通全流程
| Skill | 核心职责 | 解决的核心痛点 | 效率提升点 |
|---|---|---|---|
| api-test-tagger | 为测试脚本自动打标签 | 脚本无标签,无法按模块/优先级/场景筛选 | 一键打标,精准控制执行范围 |
| api-test-executor | 智能执行调度、结果收集 | 命令参数复杂、执行范围难控制、结果散落 | 自然语言调用,结构化输出 |
| api-failure-diagnoser | 失败用例自动诊断 + 修复建议 | 失败排查耗时、根因定位困难 | 自动分类根因,生成修复建议 |
| api-testdata-cleaner | 测试数据智能清理 | 数据污染导致随机失败、手动清理低效 | 三层无损清理,白名单保护 |
| api-report-generator | 可视化测试报告生成 | 报告没人看、只有数字没有洞察 | 11 分区决策型报告 + 双报告联动 |
| api-pipeline-scheduler | 全链路流水线编排调度 | 多个 Skill 手动串联、操作繁琐 | 一条指令跑通全流程 |
6 款 Skill 各司其职,既可独立使用,也可编排联动。
接下来,逐个拆解。
二、api-test-tagger:让脚本"可分类、可筛选、可调度"
它解决了什么痛点?
脚本写好了,但缺乏统一的标签体系,导致:
- 想只跑"冒烟测试"或"P0 用例",无法快速筛选;
- P0/P1/P2 用例混在一个目录,执行时无法按优先级过滤;
- 模块归属不清晰,跨模块用例难以归类;
- CI/CD 流水线无法根据代码变更范围选择对应测试集。
一句话概括:脚本没有标签,就像图书馆没有分类编号------想找一本书,只能一本本翻。
核心能力
定位 :测试脚本的"智能分类员",是所有执行、调度、筛选、治理的基础底座。
| 能力 | 说明 |
|---|---|
| 自动解析脚本 | AI 自动识别业务模块、优先级、测试类型 |
| 标准标签生成 | 自动生成 @pytest.mark.smoke、@pytest.mark.P0、@pytest.mark.user 等标记 |
| 多维标签体系 | 支持模块、优先级、场景(正向/异常/边界)、策略(冒烟/回归) |
| 标签-脚本映射表 | 输出可直接被执行 Skill 使用的映射关系 |
执行后,你的脚本会变成:
python
@pytest.mark.smoke
@pytest.mark.P0
@pytest.mark.user
def test_login():
# 登录接口
然后执行时只需要:"tags": ["smoke", "P0", "user"],就能精准筛选执行范围。
实战示例
以 shop-lab-api-test 项目为例:
请使用api-test-tagger为 shop-lab-api-test 项目的所有测试脚本自动打上标准化标签,使用默认标签规范

WorkBuddy 会加载 api-test-tagger 技能,自动完成:
- 扫描脚本目录 :递归读取
shop-lab-api-test项目目录下所有test_*.py` 文件; - 语义解析:解析每个测试方法的名称、docstring、请求参数、断言内容;
- 智能标签推荐;
- 标签写入:在测试方法上添加 pytest 装饰器
- 生成索引文件: 记录全量标签映射;
- 生成统计报告:展示各维度标签分布。
用VSCode打开shop-lab-api-test项目测试脚本,建议要花些时间检查一下测试脚本中自动打上的标准化标签是否合理。(如果自动打上的标签不合理,可以继续优化)

除了脚本会自动打上标准化标签外,在执行完成后,还会在项目根目录下生成一份标签分布统计报告:tag_statistics.md 。

从标签分布统计报告中,可以得知,当前项目中,共有多少个测试类、测试方法,以及不同优先级、业务模块、测试场景、执行策略标签的比例分布情况。
技能价值
脚本打标 Skill 是所有执行、调度、筛选、治理的基础底座------没有标签,后续的精准执行全是空谈。
三、api-test-executor:让测试"说人话就能跑"
它解决了什么痛点?
跑测试这件事,传统方式是这样的:
bash
pytest testcases/ -k "smoke and auth" -n 4 --rerups 2 --timeout=30 \
--alluredir=./allure-results --html=./report.html -v
参数记不住、拼不对、环境配错重来------跑一组测试,折腾半天还没开始跑。
核心能力
定位 :测试执行的"智能发动机",只做三件事------触发执行、范围筛选、结果收集。
| 能力 | 说明 |
|---|---|
| 自然语言调用 | 说一句"在 test 环境跑一下登录模块的冒烟测试",自动解析为执行参数 |
| 多维筛选 | 支持标签索引模式 + 文件路径回退 + 自然语言解析三种模式 |
| 环境健康自检 | 执行前自动检查被测服务、数据库、Redis 连通性 |
| 并发执行调度 | 无依赖接口并行,有依赖接口串行,失败自动重试 |
| 结构化输出 | 同时输出 execution_results.json(给下游)、execution_summary.md(给人看)、Allure 原生数据 |
支持的语义解析示例:
| 你说的话 | 自动解析结果 |
|---|---|
| "跑一下冒烟测试" | --scope smoke |
| "只跑 P0 用例" | --priority P0 |
| "跑一下订单和支付" | --module order,payment |
| "排除不稳定的用例" | --exclude-tag flaky |
| "8 个线程跑" | --parallel 8 |
甚至支持组合语义:
"在 test 环境跑一下冒烟测试,只跑登录和订单模块的 P0 用例,排除 flaky 的"
也能精准解析为:
--env test --scope smoke --module auth,order --priority P0 --exclude-tag flaky
关键设计 :它明确不做 复杂环境自检、分布式调度、实时监控、失败根因分析------把这三件事做到极致,把更重的能力留给独立 Skill。这种克制反而让它更稳定、更专注。
实战示例
- 针对
shop-lab-api-test项目 P0 级测试:78 条用例,77 条通过,1 条跳过,通过率 98.7%

- 全程无需人工配置参数
技能价值
测试人员不用再记复杂的命令参数------说人话,就能跑测试。
四、api-failure-diagnoser:让失败脚本"自己修好"
它解决了什么痛点?
测试跑完了,有失败用例------然后呢?
- 翻终端日志,找报错信息;
- 翻 Allure 报告,看请求响应详情;
- 判断是环境问题、数据问题、脚本问题、还是产品 Bug;
- 定位到具体原因,想修复方案;
- 改脚本、改数据、改配置......
一个失败用例,排查半小时起步,这是自动化测试最让人崩溃的环节。
核心能力
定位 :失败分析的"智能大脑",负责对失败用例进行自动分类、根因定位、修复建议生成。
| 能力 | 说明 |
|---|---|
| 日志自动解析 | 提取错误堆栈、状态码、响应体、请求参数、执行上下文 |
| 失败模式匹配 | 基于规则库和历史数据,自动分类失败类型 |
| 根因深度定位 | 区分环境/数据/脚本/产品缺陷,精准到具体原因 |
| 修复建议生成 | 针对每类失败,生成具体修复建议(改哪行代码、调哪个参数) |
| 优先级自动分级 | 根据影响范围、模块重要性,标注 P0/P1/P2 |
四大失败分类:
| 失败类型 | 标识 | 典型场景 |
|---|---|---|
| ENV_ERROR | 环境问题 | 服务状态、网络超时、数据库连接 |
| DATA_ERROR | 数据问题 | 数据污染、依赖缺失、并发冲突 |
| SCRIPT_ERROR | 脚本问题 | 定位失效、断言过严、参数错误 |
| BUG | 产品缺陷 | 业务逻辑错误、边界异常、返回不符合预期 |
最有价值的一点 :对于 SCRIPT_ERROR 和 DATA_ERROR 类型的失败,它会直接生成可执行的修复方案------甚至帮你改好脚本。
实战示例
实战中非常典型的案例:test_register_success 失败。

- 现象:注册接口返回"账号重复"异常
- AI 诊断 :脚本里用户名
newuser_001写死,上一轮已注册,属于数据污染 - 分类:DATA_ERROR
- 修复建议:用户名改为动态生成(时间戳/UUID)
- 自愈效果 :修复后重新执行,通过率从 25% → 35% → 98.7% 持续爬坡

技能价值
从"人工排查半小时"到"AI 诊断 30 秒"------失败用例不再是测试的噩梦,而是质量改进的入口。
五、api-testdata-cleaner:让测试数据"一键净空"
它解决了什么痛点?
测试数据混乱,是导致接口自动化"随机失败""结果不可复现"的首要原因(占 Flaky Test 成因的 60% 以上):
- 执行完下单用例未删除订单,二次执行"订单号重复";
- 多线程共用同一测试账号,数据状态错乱;
- 测试环境长期不清理,冗余数据堆积,查询接口超时;
- 手动清理?几十张表、几条 Redis Key,漏清错清防不胜防。
核心能力
定位:测试环境的"智能保洁员",实现"执行前数据准备、执行中数据隔离、执行后数据清理"的全流程自动化。
| 能力 | 说明 |
|---|---|
| 环境健康检查 | 自动连接数据库、缓存服务,校验连接可用性 |
| 残留数据扫描 | 扫描并标记上一轮执行未清理的残留数据 |
| 脏数据精准识别 | 基于执行记录的"数据归属",排除生产/核心业务数据 |
| 分类型智能清理 | 结构化数据(MySQL)+ 非结构化数据(Redis)差异化清理 |
| 白名单保护 | 标记不可清理的核心数据,确保无损清理 |
两层清理策略:
| 数据类型 | 清理方式 |
|---|---|
| MySQL 结构化数据 | 订单模块:删除测试订单 + 还原库存;用户模块:注销测试用户 + 清空购物车;支持按主键批量删除、按条件软删除 |
| Redis 非结构化数据 | 清理测试产生的缓存、Token、临时会话,支持按 Key 前缀批量删除 |
关键特性------无损清理 :通过"数据归属标记 + 白名单保护",确保仅清理测试产生的临时数据,不触碰核心数据。支持按业务模块定制清理规则(如电商的"订单-库存-支付"联动清理),而非简单的"删库式"清理。
实战示例
- 实战中单次清理:2032 条测试数据 ,覆盖订单、用户、购物车、支付等多个模块



- 清理成功率 100%,白名单数据零误删
- 清理后重新执行,通过率显著提升
技能价值
60% 的 Flaky Test 成因来自数据污染------把数据清干净,测试稳定性直接上一个台阶。
六、api-report-generator:让报告"老板愿意看、能决策"
它解决了什么痛点?
测试报告最大的失败,不是数据不准,而是没人看。
- 报告里只有"通过 X 条、失败 Y 条"的统计数字;
- 老板看一眼通过率,然后问:"所以这次能发版吗?";
- 开发拿到报告,找不到自己负责模块的失败详情;
- 想看历史趋势,发现根本没存;
- 手写报告,每周花半天整理格式;
- 最后报告沦为"数字堆砌",无法驱动任何决策。
核心能力
定位 :测试报告的"AI 设计师",只做一件事------将执行结果转化为可视化、可洞察、可决策的专业测试报告。
核心能力一:11 个分区,专业度拉满
| 分区 | 核心内容 |
|---|---|
| 报告头部 | 报告标题、执行环境、执行时间、执行人 |
| 总览模块 | 总用例数、成功/失败/跳过数、通过率、平均响应耗时 |
| 趋势模块 | 多次执行通过率、接口耗时趋势折线图 |
| 模块统计 | 按业务模块展示通过率饼图/柱状图 |
| 用例明细区 | 所有用例名称、接口路径、状态、响应时间、标签 |
| 故障详情区 | 失败用例、报错信息、AI 诊断根因、修复建议 |
| 数据清理记录 | 本次清理执行结果(数量、异常信息) |
| 风险智能分级 | 高风险模块、高频失败接口、flaky 测试、覆盖率缺口 |
| 优化建议生成 | 脚本重构建议、断言调整建议、场景补充建议 |
| 跳转入口 | 【打开 Allure 原生报告】一键跳转 |
| 底部备注 | 版本、技能标识、运维备注 |
核心能力二:双报告联动
- 定制 HTML 报告(决策友好,11 个分区)
- 自动识别 Allure 报告(无需手动配置路径)
- 报告头部嵌入 Allure 跳转按钮(一键切换)
两份报告各取所长:想看决策概览、风险分级 → 定制报告;想看完整执行步骤、堆栈跟踪 → Allure 报告。一个按钮,两个世界。
核心能力三:决策导向,不是数字堆砌
| 决策层 | 内容 |
|---|---|
| 风险智能分级 | 🔴 高风险(连续失败、核心模块异常)/ 🟡 中风险(偶发失败)/ 🟢 低风险(正常波动) |
| 优化建议生成 | 按优先级排序,标注预期收益和实施成本 |
| 趋势分析 | 通过率趋势、接口耗时变化、覆盖率演进 |
实战示例
- 基于
execution_results.json(78 条用例,98.7% 通过率)一键生成 完整 HTML 报告

- 11 个内容区域全部渲染,模块统计栏支持点击跳转到对应用例
- Allure 跳转入口可正常点击,双报告联动无缝切换


技能价值
让报告从"数据堆砌"升级为"决策支撑"------老板看了点赞,开发看了愿意用。
七、api-pipeline-scheduler:一条指令跑通全流程
它解决了什么痛点?
你已经装了上面 5 款 Skill,但每次跑测试,还是要这样:
- 先调用
api-test-executor跑测试; - 跑完发现有失败,再调用
api-failure-diagnoser诊断; - 修复完重新跑一遍验证;
- 跑完调用
api-testdata-cleaner清理数据; - 清完调用
api-report-generator生成报告; - 中间任何一步出问题,重来......
5 个环节,手动操作五六次------独立 Skill 再强,手动串联等于半自动。
核心能力
定位 :所有 Skill 的"总指挥",只做三件事------Skill 编排、参数转发、状态汇总 。它不参与任何具体业务逻辑------不执行测试、不清理数据、不生成报告,只负责"指挥"。
| 能力 | 说明 |
|---|---|
| 一条指令全链路跑通 | 自动按预设顺序串行执行:执行 → 清理 → 报告 |
| 完全解耦 | 原有 Skill 零改动,新增独立编排层,各 Skill 互不影响 |
| 4 种执行模式 | full_flow(全流程)/ only_exec(仅执行)/ only_clean(仅清理)/ only_report(仅报告) |
| 异常管控 | continue_on_error=true 时单环节失败不终止全流程 |
| 状态汇总 | 记录每个环节执行状态、异常信息,输出全链路报告 |
智能编排策略:不是所有 Skill 都要进流水线。
| Skill | 是否纳入固定流程 | 原因 |
|---|---|---|
| api-test-executor | ✅ 是 | 每次测试必跑 |
| api-testdata-cleaner | ✅ 是 | 每次测试后必清 |
| api-report-generator | ✅ 是 | 每次测试后必出报告 |
| api-test-tagger | ❌ 否 | 仅新脚本首次上线时打标,后续无需重复 |
| api-failure-diagnoser | ❌ 否 | 失败属偶发场景,按需手动调用 |
设计原则:纳入常态化的,是"每次必做"的事;留作按需的,是"偶尔才做"的事。
实战示例
输入指令:
bash
帮我针对接口测试项目:xxx/shop-lab-api-test 运行P0级测试脚本,并一键跑通完整流程
自动执行:
- 调用
api-test-executor执行 P0 测试 - 自动调用
api-testdata-cleaner清理数据 - 自动调用
api-report-generator生成报告 - 输出全链路汇总信息
最终效果 :全链路流水线执行完毕,所有环节成功,HTML 报告 + Allure 报告双联动。全程没有人工写过一行代码。


全链路流水线执行完毕,所有环节均已成功。

技能价值
让多个独立 Skill 从"散装工具"升级为"流水线闭环"------自动化测试的最高境界,不是工具多强,而是流程多顺。
八、组合拳:1 + 1 > 2
单独使用每款 Skill 已经很强,但真正发挥威力的是组合拳。
固定编排链路
bash
api-test-executor(执行)→ api-testdata-cleaner(清理)→ api-report-generator(报告)
通过 api-pipeline-scheduler 一条指令跑通:
bash
帮我针对 xxx 项目运行 P0 测试,一键跑通完整流程
灵活组合示例
| 场景 | 组合方式 |
|---|---|
| 日常回归 | tagger(首次)→ scheduler(全流程) |
| 发版前验证 | scheduler(full_flow 模式) |
| 失败修复 | executor → diagnoser → executor(重新验证) |
| 环境重置 | cleaner(only_clean 模式) |
| 补生成报告 | report-generator(only_report 模式) |
| CI/CD 流水线 | scheduler + Claude CLI 非交互模式 |
无缝接入 CI/CD
通过 Claude CLI 的非交互模式,Jenkins 可直接调度整套编排流程:
bash
claude -p "请调用 api-pipeline-scheduler 技能,参数: project_path=${PROJECT_PATH}, env=test, scope=p0, run_mode=full_flow" \
--permission-mode bypassPermissions \
--output-format json \
--max-turns 30
| 参数 | 说明 |
|---|---|
-p "..." |
非交互模式,命令行静默调用 |
--permission-mode bypassPermissions |
跳过权限确认,避免流水线阻塞 |
--output-format json |
JSON 结构化输出,机器可读 |
--max-turns 30 |
限制最大轮次,防止无限循环 |
让接口测试全流程真正成为流水线的一环------代码提交自动触发,无人值守,报告自动归档。
九、谁适合用?怎么落地?
强烈推荐
- 接口自动化测试工程师:告别手动串联,一键跑通全流程
- 测试开发工程师:搭建企业级自动化流水线、接入 CI/CD
- 测试团队负责人:推动团队从"单点工具"走向"流水线闭环"
- 质量经理 / QA Manager:建立标准化、可复用的全链路测试流程
落地节奏建议
对于初次落地 Agent Skill 体系的团队,无需追求"一步到位",建议按以下节奏分步实施:
| 阶段 | 目标 | 涉及 Skill |
|---|---|---|
| 阶段一:单点工具化 | 让脚本能跑起来 | tagger + executor |
| 阶段二:工具流程闭环 | 跑完能诊断、能清理、出报告 | + diagnoser + cleaner + report-generator |
| 阶段三:流水线化 | 一键编排,接入 CI/CD | + pipeline-scheduler |
| 阶段四:平台化集成 | 全平台数据互通(后续规划) | + change-optimizer + quality-monitor |
阶段四的 api-change-optimizer(接口变更适配)和 api-quality-monitor(持续质量监控)需要平台化能力支撑,后续开发一站式智能测试平台时再细讲。
十、如何获取和安装?
6 款 Skill GitHub 仓库地址:
bash
git clone git@github.com:xxx/skills.git
安装到 WorkBuddy:
bash
cp -r skills/api-test-tagger ~/.workbuddy/skills/
cp -r skills/api-test-executor ~/.workbuddy/skills/
cp -r skills/api-failure-diagnoser ~/.workbuddy/skills/
cp -r skills/api-testdata-cleaner ~/.workbuddy/skills/
cp -r skills/api-report-generator ~/.workbuddy/skills/
cp -r skills/api-pipeline-scheduler ~/.workbuddy/skills/
安装到 Claude Code:
bash
cp -r skills/api-test-tagger ~/.claude/skills/
cp -r skills/api-test-executor ~/.claude/skills/
cp -r skills/api-failure-diagnoser ~/.claude/skills/
cp -r skills/api-testdata-cleaner ~/.claude/skills/
cp -r skills/api-report-generator ~/.claude/skills/
cp -r skills/api-pipeline-scheduler ~/.claude/skills/
安装完成后,在你的 AI 工具里直接说:
"帮我针对 xxx 项目运行 P0 测试,一键跑通完整流程"
就可以开始用了。
小贴士:建议先装好 tagger(打标)+ executor(执行)+ cleaner(清理)+ report-generator(报告)四款核心 Skill,再装 pipeline-scheduler(编排层),才能跑通全流程。diagnoser(诊断)可按需安装,出现失败时手动调用。
写在最后
测试行业有句老话:"自动化测试的最高境界,不是工具多强,而是流程多顺。"
回顾整个接口测试执行 Skill 体系,我们走过的路:
| 阶段 | Skill | 解决的问题 |
|---|---|---|
| ① 打标 | api-test-tagger | 让脚本可分类、可筛选 |
| ② 执行 | api-test-executor | 让脚本能"听话地跑起来" |
| ③ 自愈 | api-failure-diagnoser | 让失败能自修复 |
| ④ 清理 | api-testdata-cleaner | 让数据能自动清 |
| ⑤ 报告 | api-report-generator | 让报告能自动出、能驱动决策 |
| ⑥ 编排 | api-pipeline-scheduler | 让以上所有,一键串联 |
每款 Skill 各司其职,编排层统一调度------这就是 Agent Skill 体系的完整形态。
它不会替代你的测试策略,不会替代你的业务理解,更不会替代你对质量的整体把控。它只是把你从反复手动调用工具、机械执行调度、繁琐的结果整理 中解放出来,让你把精力聚焦在更有价值的事情上------测试策略优化、质量趋势分析、自动化体系持续改进。
而这,正是 AI 赋能测试的真正意义------不是替代人,而是让工具协同,把人彻底解放出来。
如果你也厌倦了每次跑测试都要手动操作五六步,强烈推荐试试这套 Skill 体系。
从今天开始,让接口测试执行,真正"自动化"。