Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Skills

「AI进化社」 实战技能集合,用于管理和存放各类自定义 Skill。

每个 Skill 以独立目录的形式存放在 skills/ 下,包含技能定义文件(SKILL.md)和评估配置(evals/)。

目录结构

skills/
├── req-to-user-story/           # 需求 → 用户故事
├── review-user-stories/         # 用户故事审查
├── generator-testcase-xmind/    # 测试用例 XMind 生成器
├── generator-testcase-excel/    # 测试用例 Excel 生成器
├── review-testcase/             # 测试用例质量评审
├── safe-testcase/               # 测试场景遗漏补全
├── api-schema-parser/           # 接口定义解析器
├── api-testdata-generator/      # 测试数据自动化构造
├── api-testscript-generator/    # 接口自动化测试脚本生成
├── api-test-optimizer/          # 接口自动化脚本质量检查与优化
├── api-test-tagger/             # 接口测试脚本智能标签化管理
├── api-test-executor/           # 接口测试智能执行调度引擎
├── api-failure-diagnoser/       # 测试失败智能诊断与自动修复
├── api-testdata-cleaner/        # 接口测试数据清理工具
├── api-report-generator/        # 接口测试智能报告生成专家
├── api-pipeline-scheduler/      # 接口自动化全链路流水线调度器
├── ui-page-parser/              # UI 页面解析器
├── ui-testscript-generator/     # UI 测试脚本生成
├── ui-testscript-enhancer/      # UI 测试脚本增强
├── ui-visual-assert/            # UI 视觉断言
├── ui-test-tagger/              # UI 测试脚本智能标签化
├── ui-test-executor/            # UI 测试智能执行调度引擎
├── ui-failure-diagnoser/        # UI 测试失败诊断与自动修复
├── ui-report-generator/         # UI 测试报告生成专家
├── ui-pipeline-scheduler/       # UI 自动化全链路流水线调度器
└── ...                          # 更多技能持续添加中

Skills 一览

req-to-user-story — 需求 → 用户故事

将口语化、非结构化的原始业务需求自动拆解为标准化的结构化用户故事(User Story)。

适用场景:

  • 输入一段需求描述,让其整理、拆分、写用例、分析或梳理
  • 粘贴需求文档(docx、txt、md),自动拆解并输出结构化用户故事

使用方式:

在 Claude Code 中直接输入需求描述,或在对话中输入:

/req-to-user-story

核心能力:

  • 按功能独立性识别和拆分功能点,忽略原始文档结构的粒度干扰
  • 自动识别参与角色、主流程、替代流程、异常场景和前后置条件
  • 支持纯文本和文档文件输入,文档输入时自动保存拆解结果到同目录

输出格式:

每条用户故事以编号表格形式呈现,包含参与者、前置条件、主流程、替代流程、后置条件、异常情况等字段。


review-user-stories — 用户故事审查

对已有的用户故事进行系统性审查,检查是否存在遗漏的场景和维度。

适用场景:

  • 检查用户故事的完整性和遗漏
  • 审查需求、补充边界场景和异常情况
  • 对用户故事做上线前的最终质量把关

使用方式:

在 Claude Code 中提供用户故事列表,或输入:

/review-user-stories

四个审查维度:

维度 说明
边界条件 数量、金额、长度、时间、分页、频率、容量等上下限
异常场景 并发冲突、数据不一致、网络异常、服务不可用、重复操作等
业务规则 时序规则、计算规则、状态流转、冲突规则、关联规则、时效规则
非功能性需求 性能、安全、可用性、数据一致性、审计日志、兼容性

核心能力:

  • 逐条审查并输出内嵌批注式报告(原始内容 + 审查发现)
  • 跨故事的交叉审查,发现逻辑矛盾和衔接缺失
  • 建议新增的用户故事,补充未覆盖的场景
  • 支持纯文本和文档文件输入,文档输入时自动保存审查报告

generator-testcase-xmind — 测试用例 XMind 生成器

基于用户故事系统化拆解测试点,以 XMind 思维导图格式输出结构化测试点清单。

适用场景:

  • 提供用户故事文本或文档,要求拆解测试点
  • 对需求进行测试评审,生成测试点思维导图
  • 涉及"测试点"、"测试设计"、"功能测试"等关键词

使用方式:

在 Claude Code 中提供用户故事,或输入:

/generator-testcase-xmind

五大测试维度:

维度 说明
功能测试 正常流程、分支流程、多角色多路径
边界值测试 输入长度、数值范围、字符类型、时间日期边界
异常测试 错误输入、系统异常、网络异常
业务规则测试 业务逻辑约束、状态转换规则
非功能性测试 性能、安全性、兼容性

核心能力:

  • 系统化拆解,五大维度全覆盖,不遗漏不重复
  • 等价类划分 + 边界值分析,每个无效等价类单独设计测试点
  • 按 P0/P1/P2 标注优先级
  • 支持 docx/txt 文档和纯文本输入,输出 XMind 文件

generator-testcase-excel — 测试用例 Excel 生成器

基于用户故事或测试点,生成完整的可执行测试用例,以 Excel (.xlsx) 格式输出。

适用场景:

  • 提供用户故事(文本或 docx),要求生成测试用例
  • 提供 xmind 测试点,要求转化为可执行的测试用例
  • 要求输出 Excel 格式的测试用例

使用方式:

在 Claude Code 中提供用户故事或测试点,或输入:

/generator-testcase-excel

核心能力:

  • 每个用例包含 8 个标准字段:编号、标题、前置条件、测试步骤、测试数据、预期结果、优先级、关联需求编号
  • 等价类划分 + 边界值分析(5类边界值全覆盖),测试数据具体可执行
  • 异常用例验证提示信息内容,预期结果明确可验证
  • 支持 docx(用户故事)、xmind(测试点)、纯文本三种输入,输出含两个 Sheet 的 Excel 文件(用例表 + 统计表)

review-testcase — 测试用例质量评审

对 AI 生成的测试用例进行分类分级、5 维评审打分和 7 项量化指标统计。

适用场景:

  • 评审测试用例质量、逐条评分打分
  • 对用例分级分类(可用/待修改/错误无效)
  • 统计用例覆盖率等量化指标

使用方式:

在 Claude Code 中提供测试用例文件,或输入:

/review-testcase

5 维评审体系(满分 100):

维度 满分 评审重点
逻辑完整性 25 步骤清晰、逻辑链路跑通
预期结果明确性 20 每步预期结果可验证
前置条件完备性 15 环境、数据、权限等条件完整
PRD 覆盖度 25 覆盖核心功能点与联动规则
边界异常覆盖 15 边界值、并发、互斥、错误处理充分

7 项量化指标:

需求覆盖率(≥95%)、反向用例占比(≥30%)、边界用例数量(每功能点≥2)、重复用例率(≤10%)、错误用例率(≤5%)、高危场景覆盖率(100%)、历史缺陷覆盖率(≥80%)。

核心能力:

  • 三级分类:可用 / 待修改 / 错误无效(含否决规则)
  • 逐条评分并输出扣分原因和改进建议
  • 支持 Excel 和 XMind 格式输入,输出同格式评审版文件 + Markdown 评审报告

safe-testcase — 测试场景遗漏补全

对已有测试用例或测试点进行 11 维度深度场景遗漏分析,补全人工最易遗漏的测试场景。

适用场景:

  • 补全用例场景、检查遗漏场景
  • 补全高频 BUG 用例、补齐非功能用例
  • 对已有用例做查漏补缺

使用方式:

在 Claude Code 中提供测试用例或测试点,或输入:

/safe-testcase

11 个检查维度:

维度 说明
等价类覆盖 有效/无效等价类完整性
边界场景 边界外值、空值、特殊字符、极长极短输入
业务规则交叉 多条件组合场景(正交法/成对组合法)
状态迁移 合法/非法状态转换路径
非功能性需求 性能、安全、兼容性覆盖
性能场景 高并发、响应时间、大数据量、资源耗尽
安全场景 SQL 注入、XSS、CSRF、越权访问等
反向用例 每个异常分支独立反向用例
兼容性场景 多浏览器、多设备、多系统、多分辨率
历史 BUG 案例 基于历史 BUG 记录复现场景
业务特定规则 隐藏规则和禁止规则覆盖

核心能力:

  • 标识与内容分离:Excel 独立列、XMind label、文本行末标记,便于筛选过滤
  • 支持 Excel、XMind、文本/Markdown 三种格式输入输出
  • 只追加不修改,严格保留原始内容不变

api-schema-parser — 接口定义解析器

将来自不同来源、不同格式的接口定义数据统一转换成标准化结构化接口数据。

适用场景:

  • 解析 Swagger/OpenAPI、Postman 集合、HAR 抓包、YApi/Apifox 导出文档
  • 纯文本接口描述转结构化数据
  • 为后续测试脚本生成、数据构造、场景分析准备统一的接口数据输入

使用方式:

在 Claude Code 中提供接口定义文件,或输入:

/api-schema-parser

支持的输入格式:

Swagger 2.0 / OpenAPI 3.x (JSON/YAML)、Postman 集合 (v2.0/v2.1)、HAR 抓包文件、YApi 导出 JSON、Apifox 导出 JSON/YAML、纯文本描述

核心能力:

  • 自动识别输入源类型,匹配对应解析规则
  • 深度解析参数(Path/Query/Header/Body),递归展开 $ref 引用
  • 解析成功/异常响应体,提取业务错误码映射
  • 识别隐性业务规则(限流、加密、鉴权、依赖、幂等性等),标注置信度
  • 输出标准化 api_definitions.json/yaml

api-testdata-generator — 测试数据自动化构造

基于不同输入来源自动生成覆盖全场景、可直接用于数据驱动测试的测试数据集。

适用场景:

  • 基于接口定义生成测试数据(传统模式)
  • 基于自定义字段规则生成测试数据(规范模式)
  • 用自然语言描述数据需求,Faker 驱动生成(自然语言模式)

使用方式:

在 Claude Code 中提供接口定义、字段规则文件或自然语言描述,或输入:

/api-testdata-generator

三种输入模式:

模式 输入来源 适用场景 输出格式
传统模式 api_definitions.json 接口测试、数据驱动测试 YAML/JSON/Excel
规范模式 自定义字段规则文件 多类型测试、团队规范驱动 YAML/JSON/Excel/CSV
自然语言模式 自然语言描述 手工测试、性能测试、UI 自动化 CSV/JSON

四大数据维度:

维度 占比 说明
正向合法数据 20% 满足所有业务与格式规则的标准数据
边界值数据 30% 最小/最大长度、数值上下限、临界合法值
异常非法数据 35% 空值、Null、缺失参数、类型不匹配、格式错误
安全与幂等数据 15% SQL 注入、XSS、重复提交等风险场景

核心能力:

  • 自动处理接口依赖数据(Token、用户 ID、订单号等)
  • 支持多种输出格式(YAML/JSON/Excel/CSV)
  • 自然语言模式基于 Faker 库生成中文场景数据

api-testscript-generator — 接口自动化测试脚本生成

基于标准化接口定义与可选测试数据,批量生成分层架构、可直接运行的接口自动化测试脚本。

适用场景:

  • 将接口定义转化为可执行的 Pytest 自动化测试工程
  • 基于测试数据生成数据驱动测试脚本
  • 快速搭建接口自动化测试项目

使用方式:

在 Claude Code 中提供接口定义文件,或输入:

/api-testscript-generator

技术栈: Python + Requests + Pytest + Allure2

两种数据模式:

模式 适用场景
数据驱动模式 有测试数据文件,脚本与数据解耦
内联数据模式 无测试数据文件,脚本内自动生成默认数据

分层架构:

api_auto_project/
├── config/        # 环境配置、全局常量
├── api/           # 接口请求层(封装所有接口)
├── testcases/     # 测试用例层
├── data/          # 测试数据(数据驱动模式)
├── utils/         # 工具类(请求/断言/鉴权/日志)
├── conftest.py    # Pytest 全局钩子
└── pytest.ini     # Pytest 配置

核心能力:

  • 自动生成接口请求层封装(路径参数替换、参数构建、请求调用)
  • 三层断言(状态码 + 业务码 + 业务数据)
  • 注入企业级健壮逻辑:统一超时/重试/异常捕获/Token 鉴权/日志/Allure 报告
  • 支持多环境切换(dev/test/pre/prod)

api-test-optimizer — 接口自动化脚本质量检查与优化

对 AI 生成的接口自动化脚本做自动化检查、问题诊断、规范对齐、缺陷修复与场景补齐。

适用场景:

  • 检查优化接口自动化测试脚本
  • 对 AI 生成的脚本做质量审查
  • 补全遗漏的测试场景

使用方式:

在 Claude Code 中提供接口测试脚本目录,或输入:

/api-test-optimizer

4 类校验 + 10 维度场景补齐:

能力 说明
语法校验 语法错误、依赖缺失、变量未定义
规范校验 命名规则、注释完整性、目录结构
健壮性校验 等待机制、异常捕获、鉴权逻辑
逻辑校验 断言覆盖、接口依赖、业务规则

10 维度场景补齐:

正向场景、必填校验、参数合法性、边界值、异常处理、业务规则、安全风险、接口依赖、兼容性、断言完整性。

核心能力:

  • 自动修复语法错误、规范对齐、健壮性增强、逻辑修复、代码精简
  • 输出校验报告(Markdown)+ 优化后可执行脚本工程
  • 非破坏性优化:在输出目录生成新文件,不修改原始脚本
  • 所有修改添加 [优化器XXX] 标识注释,便于 Code Review

api-test-tagger — 接口测试脚本智能标签化管理

为接口自动化测试脚本自动打上标准化标签,建立可筛选、可过滤、可统计的标签体系。

适用场景:

  • 为 API 测试脚本批量打标签、添加标记、标注优先级
  • 检测标签冲突或补全缺失标签
  • 按模块/场景/优先级分类管理测试用例
  • 生成标签分布统计报告

使用方式:

在 Claude Code 中提供测试脚本目录,或输入:

/api-test-tagger

五维标准化标签体系:

维度 标签格式 值域 必填
优先级 P0/P1/P2/P3 P0=核心链路, P1=重要, P2=一般, P3=边缘
模块 module:xxx auth/order/product/cart/user/address/payment/admin
场景 scene:xxx positive/negative/boundary/security
执行策略 run:xxx smoke/regression/full
环境 env:xxx dev/test/pre/prod 否(默认 env:test)

核心能力:

  • 智能标签推荐:基于脚本语义(方法名、docstring、请求路径)自动推荐标签
  • 冲突检测:自动检测优先级、场景、策略冲突并标注
  • 标签补全:每个测试方法必须具备 4 类必填标签,缺失自动补全
  • 支持三种模式:analyze(仅分析)/ apply(分析并写入)/ report(仅统计报告)

api-test-executor — 接口测试智能执行调度引擎

接口自动化测试的智能执行调度引擎,聚焦三大基础能力:触发执行、范围筛选、结果收集。

适用场景:

  • 触发执行 pytest 接口测试,自动加载环境配置
  • 按范围/模块/标签/自然语言筛选测试用例
  • 收集结构化测试结果(JSON + Markdown)
  • 模拟执行预览用例列表

使用方式:

在 Claude Code 中提供项目目录路径并描述执行意图,或输入:

/api-test-executor

四种筛选模式:

模式 说明
标签索引模式 基于 tag_index.json 精准筛选(推荐)
pytest marker 模式 基于项目 conftest.py 定义的 marker 筛选
文件路径回退模式 按模块匹配文件名筛选
自然语言解析模式 解析用户自然语言描述为 CLI 参数

核心能力:

  • 一键触发 pytest,自动组装执行命令
  • 自然语言意图解析(如"跑一下冒烟测试"→ -m smoke
  • 结构化结果收集:execution_results.json + execution_summary.md
  • 输出 Allure、HTML、JUnit 多格式原生报告

api-failure-diagnoser — 测试失败智能诊断与自动修复

接口自动化测试失败用例的智能诊断与自动修复技能,核心定位是"测试执行闭环的修复环节"。

适用场景:

  • 测试失败后自动分析失败原因、分类失败类型
  • 接口变更导致脚本失败,需要自动修复
  • 断言失败、参数构造错误、异常处理缺失等脚本问题修复
  • 批量诊断并修复失败用例

使用方式:

在 Claude Code 中提供 execution_results.json 或失败日志,或输入:

/api-failure-diagnoser

四大失败分类:

失败类型 判定信号 处理
ENV_ERROR 连接超时、拒绝连接、502/503/504 标记环境问题,不修复
DATA_ERROR 资源 404、Token 过期、唯一性冲突 标记数据问题,不修复
SCRIPT_ERROR AssertionError、KeyError、接口路径 404 自动修复
BUG 500 业务逻辑错误、返回数据违反规则 生成 Bug 报告

六大根因类型: 接口变更、断言过严、参数构造错误、异常处理缺失、数据依赖错误、时序/异步问题

核心能力:

  • 自动分类失败类型,精准定位根因
  • 最小侵入修复:仅修改导致失败的最小代码范围
  • 安全机制:备份先行(.bak)、默认生成 .patch 文件供审核
  • 修复后自动验证,验证失败自动回滚

api-testdata-cleaner — 接口测试数据清理工具

接口自动化测试专用的数据清理工具,解决测试执行后的数据堆积与数据污染问题。

适用场景:

  • 清理测试执行后产生的临时数据、重复数据、脏数据
  • 重置测试环境、清理缓存、清理临时文件
  • 测试完成后自动清理(联动调用)
  • CI 定时清理测试环境数据

使用方式:

在 Claude Code 中描述清理需求,或输入:

/api-testdata-cleaner

三层清理能力:

层级 说明
数据库清理 清空测试产生的临时用户、商品、订单、地址等数据
Redis 缓存清理 清理 Token、验证码、临时缓存、接口会话数据
本地文件清理 清理日志、allure-results、.pytest_cache 等

核心能力:

  • 生产环境强制拦截(env_type=prod 直接终止)
  • 白名单保护:admin 账号、正式业务数据永久保留
  • 断点容错:单模块失败不中断整体流程
  • 审计留痕:每步操作写入日志,输出标准化清理报告

api-report-generator — 接口测试智能报告生成专家

将接口测试执行结果、诊断结论和历史数据转化为多维度、可视化、可驱动决策的专业 HTML 测试报告。

适用场景:

  • 生成可视化 HTML 测试报告
  • 查看测试执行总结、趋势分析
  • 多维度数据图表(饼图/柱状图/折线图)展示
  • 集成 Allure 报告实现双报告联动

使用方式:

在 Claude Code 中提供执行结果文件,或输入:

/api-report-generator

报告包含模块:

  1. 总览大盘(通过率、响应耗时)
  2. 趋势图表(通过率折线图、接口耗时趋势)
  3. 模块统计(按业务模块的饼图/柱状图)
  4. 用例明细(列表展示,支持筛选分页)
  5. 故障详情(失败用例、AI 诊断根因、修复建议)
  6. 风险分级(高/中/低风险模块、高频失败接口)
  7. 优化建议(脚本重构、断言调整、场景补充)
  8. Allure 跳转入口

核心能力:

  • 多源数据聚合:对接 executor、diagnoser、cleaner 的输出
  • 单文件 HTML 输出(CSS/JS/图表内联),可独立打开
  • 自动生成并启动 Allure 报告
  • 智能风险分析和优化建议生成

api-pipeline-scheduler — 接口自动化全链路流水线调度器

接口自动化测试的统一调度入口,编排三个子技能按固定顺序串行执行,实现一键完成「测试→清理→报告」全流程。

适用场景:

  • 一键测试并出报告(全流程自动化)
  • 流水线执行、pipeline 调度
  • 完整的测试→清理→报告链路
  • CI/CD 集成定时触发

使用方式:

在 Claude Code 中描述全流程执行意图,或输入:

/api-pipeline-scheduler

编排的子技能(固定顺序):

  1. api-test-executor — 执行接口测试,收集结构化执行结果
  2. api-testdata-cleaner — 清理测试产生的临时数据、脏数据
  3. api-report-generator — 生成可视化 HTML 测试报告 + Allure 报告联动

四种执行模式:

模式 说明
full_flow 全链路串行执行(executor → cleaner → report-generator)
only_exec 仅执行接口测试
only_clean 仅执行数据清理
only_report 仅生成测试报告

核心能力:

  • 参数自动透传:环境、文件路径、开关等参数在子技能间自动传递
  • 容错控制:单环节失败可选继续或终止
  • 统一输出:汇总所有子技能执行状态、文件路径、关键指标
  • 环境隔离:仅允许 dev/test 环境,prod 环境直接拦截

ui-page-parser — UI 页面解析器

将页面 URL 或自然语言用例描述转换为标准化的 pages.yaml 页面对象定义,作为 UI 自动化测试数据链路的起点。

适用场景:

  • 提供页面 URL,自动抓取 DOM 结构和交互元素
  • 全站自动爬取(单入口 URL 发现全站页面)
  • 提供自然语言用例描述,AI 推断页面结构
  • 需要认证的页面抓取

使用方式:

在 Claude Code 中提供页面 URL 或用例描述,或输入:

/ui-page-parser

核心策略:Playwright 动态抓取 → CDP 连接 → 推断兜底(三级降级)

模式 说明
Playwright 动态抓取 首选,启动无头浏览器抓取渲染后真实 DOM + 截图
CDP 连接模式 macOS 沙箱兼容,连接外部 Chrome 进程
推断兜底模式 无法访问页面时,AI 基于用例推断页面结构

核心能力:

  • 全站爬取:BFS 遍历,自动发现链接、Vue Router 路由、参数化 URL 归组
  • 认证抓取:支持 CDP 交互式认证和 Storage State 录制两种方式
  • 自动检测认证拦截页面,发现后引导用户完成认证补爬
  • 输出标准化 pages.yaml/json,向下游 UI 测试技能提供标准输入

ui-testscript-generator — UI 测试脚本生成

基于 pages.yaml 页面定义和业务测试用例,生成 Playwright + POM + Pytest 的 UI 自动化测试脚本。

适用场景:

  • 将业务测试用例转化为可执行的 Playwright 测试代码
  • 创建 POM 页面对象、搭建 UI 自动化测试项目
  • 提供了 pages.yaml 和测试用例文档,希望生成自动化脚本

使用方式:

在 Claude Code 中提供 pages.yaml 和测试用例,或输入:

/ui-testscript-generator

核心原则:以业务测试用例为唯一生成范围,pages.yaml 仅作为元素定位的查询数据库。

技术栈: Playwright + POM(Page Object Model)+ Pytest

工作流程:

  1. 解析测试用例 → 提取涉及页面和操作步骤
  2. 匹配 pages.yaml → 获取元素定位器
  3. 初始化项目结构 → 创建目录和基础文件
  4. 生成 POM 页面对象 → 每个页面一个类,封装元素操作
  5. 生成测试脚本 → 用例转 pytest 测试方法
  6. 生成测试数据 → 静态数据文件 + DataFactory(Faker)

核心能力:

  • 定位器优先级:data-testid > aria-label > id > name > CSS > XPath
  • POM 方法返回 self(同页操作)或目标 Page 对象(页面跳转),支持链式调用
  • 测试方法独立,禁止 time.sleep,统一使用 Playwright 自动等待

ui-testscript-enhancer — UI 测试脚本增强

对已生成的 Playwright + POM + Pytest UI 测试脚本做健壮性增强,提升脚本运行稳定性。

适用场景:

  • 脚本跑不稳定、经常失败(flaky test)
  • 需要添加智能等待、验证码识别、弹窗处理
  • 需要失败截图录屏、异常重试等追溯能力

使用方式:

在 Claude Code 中提供测试脚本目录,或输入:

/ui-testscript-enhancer

六大增强能力:

能力 说明
智能等待 wait_for_page_readywait_for_ajaxwait_for_animationsafe_click/fill
验证码识别 图形验证码(OCR)、滑动验证码、短信验证码、打码平台 API
弹窗处理 自动关闭意外弹窗(alert/confirm/prompt)
iframe 穿透 自动进入/退出 iframe,支持 Shadow DOM
重试容错 操作级重试装饰器、页面崩溃自动恢复
失败追溯 自动截图、Trace 录制、网络请求日志

核心能力:

  • 不改变原有测试逻辑,只在脚本外围包裹稳定性机制
  • 提供验证码识别专项检测脚本,可独立运行验证 OCR 准确率
  • 增强版 BasePage 替换原有基类,所有 POM 自动继承增强能力

ui-visual-assert — UI 视觉断言

对已增强的 UI 测试脚本添加视觉回归、跨浏览器兼容性、响应式布局测试能力。

适用场景:

  • 页面改版后样式变形自动检测
  • 不同浏览器下渲染差异验证
  • 移动端/平板布局响应式测试
  • 截图比对、像素级视觉回归测试

使用方式:

在 Claude Code 中提供测试脚本目录,或输入:

/ui-visual-assert

三大测试能力:

能力 说明
视觉回归测试 pixelmatch + Pillow 像素级截图比对,支持动态区域遮罩
跨浏览器测试 Chromium/Firefox/WebKit 三引擎差异容忍,独立基线管理
响应式测试 desktop (1920x1080) / tablet (768x1024) / mobile (375x812) 多视口

核心能力:

  • 基于 Playwright 原生截图 + pixelmatch 实现,无需第三方云服务
  • 动态区域处理:通过 CSS 注入隐藏验证码、时间戳等动态内容
  • 元素级截图断言:支持特定元素区域单独比对
  • 基线自动管理:首次运行自动生成基线,UI 变更时 UPDATE_SNAPSHOTS=true 更新
  • 截图前预处理:禁用动画、等待字体加载、统一滚动条样式

ui-test-tagger — UI 测试脚本智能标签化管理

为 Playwright + POM + Pytest 的 UI 测试脚本自动打上标准化标签,建立可筛选、可过滤、可统计的标签体系,为按标签执行、按模块生成报告、按优先级调度、按浏览器分发提供基础。

适用场景:

  • 为 UI 测试脚本批量打标签、检测冲突、补全缺失标签
  • 按模块/场景/页面/优先级分类管理 Playwright 用例
  • 生成标签分布统计报告
  • 结合 pytest -m 实现冒烟、回归、模块化执行

使用方式:

在 Claude Code 中提供测试脚本目录,或输入:

/ui-test-tagger

六维标准化标签体系:

维度 标签格式 值域示例 必填
优先级 P0/P1/P2/P3 核心链路 / 重要 / 一般 / 边缘
模块 module:xxx login/product/cart/order/payment/user
场景 scene:xxx positive/negative/boundary/full_flow/visual_regress
页面类型 page:xxx home/list/detail/form/dialog
执行策略 run:xxx smoke/regression/full
浏览器/平台 browser:xxx, platform:xxx chrome/firefox/edge/safari

核心能力:

  • 智能推荐:解析方法名、docstring、page.goto() 路径、Playwright 操作步骤、断言内容,参照 pages.yaml 推断模块和优先级
  • 冲突检测:自动检测优先级、场景、策略、页面类型冲突
  • 装饰器映射:module:login@pytest.mark.module_login,含冒号标签自动转下划线
  • 三种模式:analyze(仅分析)/ apply(写入)/ report(仅统计),默认 analyze 安全优先

ui-test-executor — UI 测试智能执行调度引擎

将已编写好的 Playwright + Pytest UI 测试脚本真正跑起来,形成「标签筛选 → 环境检测 → 执行调度 → artifact 采集 → 报告产出」的完整执行闭环。

适用场景:

  • 触发执行 UI 测试、按标签/模块/优先级筛选
  • 跨浏览器矩阵执行、并行加速、失败重试
  • 自动采集失败截图、录屏、Trace、Console 日志、Page Source
  • 生成 JUnit XML / HTML / JSON 多格式报告,便于 CI 集成

使用方式:

在 Claude Code 中描述执行意图,或输入:

/ui-test-executor

调度前标准化打印(每次必输出):

  • 浏览器环境清单:版本号 / Headless 支持 / 未安装提示
  • 待执行用例清单:文件名:类别:用例名,区分前置与主筛选集

6 类 Artifact(仅失败时采集):

类型 触发 路径
screenshots setup/call 失败 artifacts/screenshots/
page-source setup/call 失败 artifacts/page-source/
console-logs setup/call 失败 5 段合并:Page Errors / Console / Network / Performance
videos call 失败 artifacts/pytest-raw/<slug>/video.webm
traces call 失败 artifacts/pytest-raw/<slug>/trace.zip
har 等价 失败 写入 console-logs 的 ## Network

核心能力:

  • 自动浏览器检测(Playwright 内置 + 系统浏览器),无可用浏览器时引导安装
  • marker 表达式智能构建:--priority 累积包含(P0+P1)、--tags AND、--modules OR
  • 失败用例深度报告:每条失败含判定规则、断言原文、预期 vs 实际、元素校验、截图/录屏/Trace 路径
  • Trace Viewer 快捷打开:支持自然语言查询(latest / 小米 / 关键词子串)

ui-failure-diagnoser — UI 测试失败诊断与全栈自动修复

WEB UI 自动化测试失败用例智能诊断与全栈自动修复专家。分析 ui-test-executor 输出的 JUnit XML + artifacts,对失败做 6 类分类 + 14 种根因定位,自动修复 pages 层 locator、注入 conftest marker、清理测试脏数据、调起 playwright install。

适用场景:

  • 诊断 UI 测试失败根因(环境、定位器、超时、数据、脚本、Bug)
  • 元素找不到、页面渲染慢、iframe 切换缺失等自动修复
  • pages.yaml 金标准对比修复定位漂移
  • 已知 Bug 注入 xfail/flaky marker,不掩盖真实缺陷

使用方式:

在 Claude Code 中提供失败结果文件,或输入:

/ui-failure-diagnoser

6 类失败分类:

类型 判定信号 处理
ENV_ERROR 浏览器/包未装、端口占用 ✅ 自动 playwright install / pip install / lsof
LOCATOR_ERROR Timeout + locator 在 page-source 不存在 ✅ AST 修复 + pages.yaml 对比 + 语义推断
TIMEOUT_ERROR Timeout + locator 存在(渲染慢) ✅ AST rewrite 调 timeout / 加 wait
DATA_ERROR setup 失败 + 数据问题 ✅ 调 api-testdata-cleaner
SCRIPT_ERROR AttributeError / Deprecated API ✅ AST rewrite(typo / 废弃 API / 异步等待)
BUG Page Error / 网络 5xx ⚠️ 注入 xfail/flaky marker

硬约束(永不违反):

  • 🚫 不改 tests/**/*.py 的断言与业务语义
  • 🟢 可改 pages/**/*.py(locator / timeout / iframe)
  • 🟢 可改 tests/conftest.py(只加 marker hook,不改 fixture/setup)
  • 🟢 所有副作用操作(pip install / playwright install)走 JSONL 审计日志

核心能力:

  • 14 种根因精准定位,每种都有对应 fix_strategy
  • AST rewrite 默认备份 .bak--verify 时失败自动回滚
  • pages.yaml 金标准对比:同身份元素的 canonical locator 推荐
  • 风险分级自动执行:🟢 低风险自动跑 / 🟡 中风险默认跑可关闭 / 🔴 高风险仅建议

ui-report-generator — UI 测试报告生成专家

将 ui-test-executor 的 JUnit XML + artifacts、ui-failure-diagnoser 的诊断报告、历史趋势数据融合为单文件 HTML 可视化报告,含状态分布、模块通过率、浏览器矩阵、风险分级、失败详情(含内联截图/录屏/Trace 打开按钮)、根因聚类与优化建议。

适用场景:

  • 生成可视化 HTML UI 测试报告
  • 跨浏览器通过率矩阵对比
  • 失败用例深度详情(截图、录屏、Trace 一键打开)
  • 历史通过率趋势分析、根因聚类与优化建议

使用方式:

在 Claude Code 中提供执行结果文件,或输入:

/ui-report-generator

数据源(5 类融合):

数据源 来源 Skill 关键字段
JUnit XML(必需) ui-test-executor nodeid / status / duration / browser
失败 artifacts ui-test-executor 截图 / page-source / console-log / 录屏 / Trace
诊断报告 ui-failure-diagnoser 分类 / 根因 / 修复策略 / 验证状态
浏览器环境 ui-test-executor 已安装浏览器清单
历史趋势 外部累积 多次执行通过率序列

报告页面分区:

区块 UI 特有增强
总览大盘(6 张 KPI 卡)
数据图表(饼图/柱图/折线)
浏览器矩阵 ✅ 多浏览器通过率对比
模块统计
诊断根因聚合 ✅ 集成 ui-failure-diagnoser
风险与建议 ✅ 含具体修复动作
失败详情 ✅ 内联截图 + 录屏 + Trace 打开按钮
用例明细(筛选+分页) ✅ 浏览器筛选器

核心能力:

  • 单文件 HTML 输出(CSS/JS/JSON 内联),可独立打开
  • Chart.js 4.4 CDN,离线自动降级到表格
  • Trace 一键复制 playwright show-trace 命令到剪贴板
  • 容错策略:任一可选输入缺失都显示「暂无数据」,不影响整体报告

ui-pipeline-scheduler — UI 自动化全链路流水线调度器

WEB UI 自动化测试的统一编排入口,把 ui-test-executor → ui-failure-diagnoser → 重试 → merge_reports → ui-report-generator 串成「执行 → 诊断 → 修复 → 重试 → 合并 → 报告」完整闭环,含失败诊断+智能重试+熔断兜底。

适用场景:

  • 一键全跑 UI 自动化(执行+诊断+报告全流程)
  • 自动修复失败用例并重试(max_retries 循环)
  • 端到端 UI 测试流水线
  • CI/CD 集成定时触发完整闭环

使用方式:

在 Claude Code 中描述全流程执行意图,或输入:

/ui-pipeline-scheduler

编排的子技能(严格串行):

ui-test-executor → ui-failure-diagnoser → ui-test-executor(重试)→ merge_reports → ui-report-generator
     Step 1            Step 2                  Step 3              Step 4.5         Step 5

核心能力:

  • 零侵入:不修改任何子技能代码/入参/出参,仅做编排与参数透传
  • 失败熔断:达 max_retries(默认 2)立即跳出,不死循环
  • 始终生成报告:无论失败与否,Step 5 必须执行
  • 多轮 XML 合并:内置 merge_reports.py,把首轮完整 XML + 各轮重试 XML 合并,保证最终报告含完整 N 条用例
  • 参数自动透传:环境、路径、开关等在子技能间自动传递
  • 详细执行摘要:每步骤耗时、修复数、最终通过率、Allure 链接

熔断条件(满足任一即跳出循环):

  1. round >= max_retries(默认 2)
  2. 上一轮诊断修复数 == 0(修复无效)
  3. 当前轮全部通过

技能协作流程

需求分析与测试用例设计流程

原始需求
  │
  ▼
req-to-user-story ──→ 结构化用户故事
  │
  ▼
review-user-stories ──→ 用户故事审查(补全遗漏)
  │
  ├──→ generator-testcase-xmind ──→ XMind 测试点
  │
  ├──→ generator-testcase-excel ──→ Excel 测试用例
  │
  ▼
safe-testcase ──→ 场景遗漏补全
  │
  ▼
review-testcase ──→ 用例质量评审(评分 + 分级)

接口自动化测试全流程

接口文档(Swagger/Postman/HAR 等)
  │
  ▼
api-schema-parser ──→ 标准化接口数据 (api_definitions.json)
  │
  ├──→ api-testdata-generator ──→ 全场景测试数据
  │         │
  │         ▼
  │   api-testscript-generator ──→ 接口自动化脚本工程
  │         │
  │         ▼
  │   api-test-optimizer ──→ 脚本质量检查与优化
  │         │
  │         ▼
  │   api-test-tagger ──→ 智能标签化管理
  │         │
  │         ▼
  │   api-test-executor ──→ 智能执行调度
  │         │
  │         ├──→ api-failure-diagnoser ──→ 失败诊断与自动修复
  │         │
  │         └──→ api-pipeline-scheduler ──→ 全链路流水线调度
  │                 │
  │                 ├── api-test-executor(执行测试)
  │                 ├── api-testdata-cleaner(清理数据)
  │                 └── api-report-generator(生成报告)
  │
  └──→ 也可直接进入 generator-testcase-xmind/excel 生成接口级测试用例

UI 自动化测试流程

页面 URL / 测试用例描述
  │
  ▼
ui-page-parser ──→ 标准化页面对象 (pages.yaml)
  │
  ▼
ui-testscript-generator ──→ Playwright + POM + Pytest 测试脚本
  │
  ▼
ui-testscript-enhancer ──→ 脚本健壮性增强(智能等待/验证码/弹窗/重试)
  │
  ▼
ui-visual-assert ──→ 视觉回归 + 跨浏览器 + 响应式测试
  │
  ▼
ui-test-tagger ──→ 六维智能标签化管理(优先级/模块/场景/页面/策略/浏览器)
  │
  ▼
ui-test-executor ──→ 智能执行调度(标签筛选/浏览器矩阵/失败 artifact 采集)
  │         │
  │         ├──→ ui-failure-diagnoser ──→ 失败诊断与自动修复(6 类分类 + 14 种根因)
  │         │
  │         └──→ ui-pipeline-scheduler ──→ 全链路流水线调度(执行→诊断→重试→报告)
  │                 │
  │                 ├── ui-test-executor(首轮执行)
  │                 ├── ui-failure-diagnoser(诊断修复)
  │                 ├── ui-test-executor(重试失败用例)
  │                 ├── merge_reports(多轮 XML 合并)
  │                 └── ui-report-generator(生成最终报告)
  │
  └──→ 也可直接调子技能独立执行:
        - ui-test-executor:单独跑测试
        - ui-failure-diagnoser:单独诊断已有失败
        - ui-report-generator:基于 JUnit XML 出报告

最小运行路径(不使用流水线编排):

ui-test-executor ──→ pytest tests/ --headed

安装使用

将需要的 Skill 目录复制或克隆到你的 Claude Code 技能目录下即可使用。

# 克隆仓库
git clone git@github.com:zhoujinjian/skills.git

# 将技能复制到你的项目中使用
cp -r skills/req-to-user-story /path/to/your/project/.claude/skills/

贡献

欢迎通过 PR 提交新的 Skill 或改进现有 Skill。

About

Public repository for Agent Skills

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages