UI 转接口自动化测试

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

用浏览器 UI 自动化抓到的真实接口流量,自动生成可执行的接口自动化测试,并自动串联接口间参数依赖。当需要把功能界面测试转成接口测试、手写接口用例太慢、接口文档缺失或过期、需要复用浏览器登录态(SSO/验证码/前端签名)做接口回归、或要按 UI 功能维度建立接口场景测试时使用。

一句话选型结论

按资料字段整理

UI 转接口自动化测试是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_34bffd4b/ui-flow-to-api-test
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_34bffd4b仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量8.3 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
UI 转接口自动化测试当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

8.3 KB
模型实际读到的说明书原文,来自技能仓库

UI 流量 → 接口自动化测试

把「人工点一遍功能界面」变成「可重复执行的接口测试」:抓真实流量 → 按功能切片 → 自动推导接口依赖 → 生成 pytest 用例。

核心原理

UI 测试最大的副产品不是多跑了几个页面,而是真实接口流量。 它给 AI 生成用例提供「事实锚点」,砍掉接口自动化最耗时的三件事:

卡点 只能靠猜 UI 抓包直接给出
接口契约 参数字段靠编 真实 URL / query / body
鉴权态 验证码、SSO、前端签名无解 复用浏览器 cookie + 真实签名字段
参数组合与时序 不知道先调谁 抓包天然带调用顺序

分工:脚本干机械活(去噪 / 去重 / 结构骨架 / 依赖匹配),大模型干推理活(异常 / 边界 / 越权 / 期望值),人干确认活(把 AI 断言拿去实测校准)。

Prerequisites

  • Python 3.9+,且已装 playwright、requests、pytest、pyyaml
  • 依赖 skill api-autotest-kit(提供工程脚手架 init_api_autotest.py 与 common/assertions.py)
  • 可选 skill browser-360-cdp(内网/需登录站点走 --engine 360 复用已登录会话)
  • 工作目录:先 cd 到你的工作目录再执行,所有产出落在 ./out/,不写 skill 安装目录

Example Prompts

  • 抓一下"下单支付"这个功能的接口流量,转成接口自动化测试
  • 把采购申请的界面操作,变成对应的接口测试用例
  • UI 自动化只能覆盖 happy path,帮我把这些功能的接口层测试补上
  • 内网系统要登录,用 360 复用我的登录态去抓包生成接口用例

Workflow

  1. 确认目标与前置
    - 明确要转的「功能」是什么(一个功能 = 一串接口调用,不是单个接口)
    - 确认目标站点、入口 URL、是否需要登录态(内网/SSO → --engine 360)
    - 跑 check 自检环境

  2. 写 UI 步骤文件(steps.json)
    - 每个步骤的 name 就是「功能切片标签」,会写进映射报告和用例注释
    - 选择器优先 data-testid / 稳定 class / 语义 role,避免 nth-child
    - 详见 references/steps-schema.md

  3. 采集流量(netcapture.py record,或 import-har 导入现成抓包文件)
    - 只收 xhr/fetch;敏感 header/字段落盘前自动打码;cookie 值一律不落盘
    - 新标签页(target=_blank)会被自动接管;单步失败不中断整次采集
    - 没有 Playwright 环境? 用 Chrome DevTools(勾选 Preserve log → 右键 → Save all as HAR with content)、Charles 或 Fiddler 导出 HAR,import-har 转成同一格式进入后续链路(对标 httprunner 的 har2case 入口,额外做脱敏与动态值标注)

  4. 生成用例(二选一,可都做)
    - 功能视角(推荐):scenario.py → 一个 UI 功能 = 一个场景用例,含跨接口依赖串联
    - 单接口视角:extract_cases.py → 每接口一条连通性/结构用例

  5. AI 补业务断言
    - 把 out/llm_prompt.md 交给大模型 → 产出 llm_cases.json(JSON 契约见 references/steps-schema.md)
    - apply_llm_cases.py 回填成可执行用例

  6. 校准与回归
    - AI 断言必须实测校准:模型给的期望值可能与真实系统不符,这步不能省
    - 依赖字段若推导错误,手工修正后重新生成
    - 分层次跑(smoke / regression),接 CI

Commands

PY=<python>                                  # 本机示例:D:/Python314/python.exe
S="{baseDir}/scripts"

# 0 自检
$PY $S/netcapture.py check

# 1 采一个功能的流量(steps 里每个 name 就是一个功能切片)
$PY $S/netcapture.py record "https://app.example.com/list" \
    --scenario "首页列表_点开详情" \
    --steps steps.json --out out/traffic.json --settle 5000

# 1b 归纳:去重后的接口清单 + 需要参数化的动态字段
$PY $S/netcapture.py summarize out/traffic.json

# 1c 替代路径:导入现成 HAR(DevTools/Charles/Fiddler 导出,需 with content)
$PY $S/netcapture.py import-har captured.har --scenario "下单支付" --out out/traffic.json

# 2a 功能视角(推荐):UI 功能 → 接口场景用例(自动串联跨接口依赖)
$PY $S/scenario.py out/traffic.json --only-host api.example.com \
    --slug order_flow --project ./api-test

# 2b 单接口视角:每接口一条用例骨架
$PY $S/extract_cases.py out/traffic.json --project ./api-test --only-host api.example.com

# 3 回填大模型产出的业务断言
$PY $S/apply_llm_cases.py llm_cases.json --project ./api-test --force

# 4 回归
cd api-test && $PY -m pytest -q
$PY -m pytest -m smoke -q --junitxml=reports/junit.xml

内网/需登录站点,采集时加 --engine 360:手动登录一次 360 安全浏览器,后续采集复用它已登录的会话,签名与验证码问题一并解决。

工程目录不存在时,先用 api-autotest-kit 初始化:

$PY ~/.workbuddy/skills/api-autotest-kit/scripts/init_api_autotest.py ./api-test

关键约束

  • 结构断言与业务断言分开。值写死必然随机挂:结构断言只校验 key 路径存在(has_path),业务断言才校验值。
  • 签名类参数不要写死。a_bogus、msToken、X-Signature 这类会过期,跑前重抓或用 UI 会话复用;脚本会在 dynamic_fields 里标注它们。
  • 依赖推导带信心评分(0.95 名字一致 / 0.85 ID 形态 / 0.70 名字包含),低于阈值丢弃,避免把纯文本巧合当依赖。
  • AI 断言要校准。实测中 AI 断言「非法枚举应返错误码」,真实响应却是 success —— 反而挖出服务端枚举入参未校验的真实缺陷。流程里「AI 断言 → 实测 → 人工定性」不可省略。
  • 写接口用例必须收尾清理,否则脏数据会让第二天随机挂。

When Not to Use

  • 纯前端渲染 / 视觉 / 交互正确性验证 → 仍应走 UI 自动化,本 skill 不替代它
  • 纯后端接口(UI 上无调用路径)→ 直接用 api-autotest-kit 按文档手写
  • 已有完整接口文档、无需登录态与真实参数组合 → 直接写用例更快
  • 压测 / 性能测试 → 用专门的压测工具

Definition of Done

  • check 通过,目标环境的浏览器内核可启动
  • out/traffic.json 生成,summarize 输出的接口数与预期功能范围一致(无埋点/监控噪音)
  • out/scenario_<slug>.md 生成:含 UI 步骤↔接口对照表、依赖表(含信心分)、请求四要素表
  • 生成的场景用例能跑通:pytest testcases/test_scenario_<slug>.py -q 通过
  • 全量回归 pytest -q 无 failed(AI 补的断言已全部实测校准)
  • 给用户的交付说明写明:哪些断言已校准、哪些依赖是低信心需人工复核、写接口的清理策略

Resources

  • 分层方案、度量指标与落地节奏:references/workflow.md
  • 依赖推导算法与调参:references/dependency-rules.md
  • UI 步骤 JSON 与 LLM 用例 JSON 契约:references/steps-schema.md
  • 实测踩坑与排查表:references/pitfalls.md
  • 示例资产:assets/steps.example.json、assets/llm_cases.sample.json

常见问题

5 问
答案由本站依据条目字段整理
UI 转接口自动化测试怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_34bffd4b/ui-flow-to-api-test。安装方式为未标注。装完刷新技能列表或重开客户端。

UI 转接口自动化测试支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

UI 转接口自动化测试权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

UI 转接口自动化测试收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

UI 转接口自动化测试用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。