返回顶部
a

auto-qa自动QA测试

在 OpenClaw 平台执行网页自动 QA 测试(自动操作 + 采证 + 报告 + 修复提示包)。当用户要求做自动化回归、演示级测试、失败证据归档或生成可直接交给下一窗口的修复 Prompt 时使用。

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.2.0
安全检测
已通过
421
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

auto-qa

Auto QA (OpenClaw Browser)

用于一期 MVP:

  • - 自动执行网页关键路径
  • 自动采集失败证据(截图、console、network、trace)
  • 自动输出 CTO 可读报告与修复任务包
  • 自动重试、断点续跑、健康检查与失败分类(环境/产品)

实际组件构成(一期 MVP)

  1. 1. 场景定义组件
  • - 位置:demo/scenarios/*.json
  • 作用:声明测试步骤、断言条件、期望结果。
  • 输入:业务路径(P0 场景)。
  • 输出:可执行步骤序列(供执行编排器读取)。
  1. 2. 执行编排器
  • - 位置:src/skills/auto-qa/scripts/runautoqa.py
  • 作用:读取场景并调用 openclaw browser 执行动作。
  • 输入:场景 JSON、浏览器 profile、runid。
  • 输出:步骤结果、证据文件、汇总报告与修复提示包。
  1. 3. 浏览器执行器(OpenClaw 内置能力)
  • - 位置:OpenClaw CLI openclaw browser ...
  • 作用:点击、输入、等待、快照、截图、日志与 trace。
  • 输入:编排器下发的步骤参数。
  • 输出:结构化 JSON 结果和调试数据。
  1. 4. 证据归档组件
  • - 位置:demo/artifacts/run-/
  • 作用:按 run 归档步骤明细、截图、console、network、trace。
  • 输入:执行过程中的实时证据。
  • 输出:可追溯的失败证据包。
  1. 5. 报告生成组件
  • - 位置:demo/reports/run-id>/report.json、demo/reports/run-id>/report.html
  • 作用:给出通过率、阻断项、Go/No-Go 判定。
  • 输入:步骤结果 + 证据统计。
  • 输出:机器可读(JSON)与演示可读(HTML)报告。
  1. 6. 修复任务包生成组件
  • - 位置:demo/reports/run-id>/fixplan.json、nextwindowprompt.md、standby_prompt.txt
  • 作用:将测试失败证据转成可直接执行的修复任务。
  • 输入:失败步骤、console、network、trace 路径。
  • 输出:根因假设、检查方向、修改方向、验收标准、下一窗口提示词。
  1. 7. 稳定性增强组件
  • - 位置:src/skills/auto-qa/scripts/run_autoqa.py
  • 作用:减少主画面外运行时的抖动风险,提升演示稳定度。
  • 能力:
- 步骤自动重试(默认每步 1 次重试) - 断点续跑(从失败步骤继续) - 健康检查(off/on-failure/each-step) - 失败分类(environment/product/unknown)
  1. 8. 门禁断言组件
  • - 位置:src/skills/auto-qa/scripts/run_autoqa.py
  • 作用:将采证数据升级为发布门禁判定,防止假 GO。
  • 默认规则:
- console error -> 违规(critical) - 同域 network 4xx -> 违规(critical) - 同域 network 5xx -> 违规(blocker)
  • - 报告输出:
- gateViolations - gateViolationCountsBySeverity - riskLevel - releaseDecision(GO / CONDITIONALGO / NOGO) - reviewStatus(consistent / needs_inspection) - reviewConclusion(复核一致 / 复核需进一步检验) - reviewFindings(需进一步检验时的具体项)
  1. 9. Trace 对齐组件
  • - 位置:demo/reports/run-id>/steptrace_map.json
  • 作用:把步骤时间窗与 trace 时间线自动对齐,便于步骤 -> 证据快速追溯。
  • 输出:每个步骤对应的 trace 事件计数、帧计数、console/API/network 样本。
  1. 10. 报告通知组件
  • - 位置:src/skills/auto-qa/scripts/run_autoqa.py(运行参数触发)
  • 作用:自动截取 report.html 全页图并发送到聊天频道。
  • 规则:
- 传入 --notify-channel 时触发。 - 未传 --notify-target 时,自动从 openclaw status --json 最近会话推断目标(当前频道优先)。

一期范围(防跑偏)

  • - 仅网页 P0 场景(3-5 条关键路径)
  • 证据四件套:screenshot + console + network + trace
  • 交付最小集合:
- report.json - report.html - fix_plan.json - nextwindowprompt.md - standby_prompt.txt

目录约定

text
demo/
scenarios/
mvp_smoke.json
_generated/ ← agent 智能生成的临时 scenario 存放目录
artifacts/
run-/
steps.json
console.json
network.json
health_checks.json
trace.zip
screenshots/
reports/
run-/
report.json
report.html
report_full.png
steptracemap.json
fix_plan.json
nextwindowprompt.md
standby_prompt.txt

场景 JSON(最小格式)

json
{
name: MVP Smoke,
autoScreenshot: true,
continueOnFailure: false,
steps: [
{ id: step-001, action: open, url: https://example.com, expected: 页面可访问 },
{ id: step-002, action: wait, text: Example Domain, expected: 标题出现 },
{
id: step-003,
action: asserttextcontains,
value: Example Domain,
expected: 正文包含关键字
}
]
}

场景 JSON(门禁规则示例)

json
{
name: WeHub Smoke,
gates: {
enabled: true,
minPassRate: 95,
console: {
errorAsFailure: true,
ignoreMessagePatterns: [known harmless error]
},
network: {
sameOrigin4xxAsFailure: true,
sameOrigin5xxAsFailure: true,
thirdParty5xxAsFailure: false,
ignoreUrlPatterns: [/favicon.ico],
ignoreStatusCodes: [401]
}
},
steps: []
}

场景 JSON(动作展示配置示例)

json
{
name: Visual Demo,
visual: {
enabled: true,
focusTabBeforeStep: true,
preActionWaitMs: 220,
postActionWaitMs: 420,
highlightBeforeClick: true,
highlightBeforeType: true,
highlightWaitMs: 480
},
steps: []
}

说明:

  • - focusTabBeforeStep:每步前尽量聚焦受控 tab,减少后台节流导致的观感抖动。
  • preActionWaitMs/postActionWaitMs:动作前后节奏等待,提升可见点击/跳转观感。
  • highlightBeforeClick/highlightBeforeType:动作前高亮目标元素。

支持动作(MVP)

  • - open
  • navigate
  • snapshot
  • click
  • hover
  • type
  • press
  • back
  • scroll
  • clicklinksameorigin
  • wait
  • evaluate
  • asserturlcontains
  • asserttext_contains
  • screenshot
  • noop

场景 JSON 校验层(安全网)

run_autoqa.py 在加载 scenario 时自动执行 pre-flight 校验:

  1. 1. JSON 语法:解析失败会报告精确行号/列号
  2. 必须字段:每个 step 必须含 action 字段
  3. 动作白名单:action 值必须在上述支持动作列表内,否则报错并列出全部合法值
  4. 参数完整性:open/navigate 须含 url;click/hover/type 须含 ref;assert_* 须含 value

校验在执行前触发,出错时给出明确的 step 索引和原因——不会默默失败。

生成 scenario 时请确保遵守上述约束。id 字段建议保留(格式 step-NNN),缺省时引擎会自动补全

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 auto-qa-1776299365 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 auto-qa-1776299365 技能

通过命令行安装

skillhub install auto-qa-1776299365

下载

⬇ 下载 auto-qa v1.2.0(免费)

文件大小: 57 KB | 发布时间: 2026-4-16 17:59

v1.2.0 最新 2026-4-16 17:59
scenario JSON pre-flight validation safety net: action whitelist, required params check, JSON syntax error reporting with line/col

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部