Web自动化测试

基于 agent-browser CLI + WSLg headed 模式的 AI 驱动 Web 自动化测试体系,用于 BNEF 活动管理平台(demo.dtask.net)的功能验证。

概述

Surface WSL Bot 在 2026-03-06 首次对 BNEF 活动管理平台进行全面的 Web 自动化测试。测试使用 agent-browser CLI 工具(Rust 实现的轻量级 Playwright wrapper),通过 WSLg headed 模式在 Windows 桌面上显示浏览器操作过程。

整个测试体系经历了从手动逐条执行到创建 web-testing skill 固化经验的完整演进过程。最终形成了 144 个测试用例覆盖管理端全部功能的测试计划。

测试工具链

组件说明
agent-browser浏览器自动化 CLI (v0.16.3),命令包括 open/snapshot/click/fill/wait 等
WSLg在 Windows 桌面显示 headed Chrome 窗口
Viewport桌面端 1707×960 (16:9);移动端 393×852 (iPhone 15 Pro)
视觉模型gpt-5-mini / gpt-4o 用于截图分析

测试覆盖范围

demo.dtask.net 管理端

模块用例数通过率状态
活动列表 (E-L)12100%✅ 完成
活动详情 (E-D)2089.5%✅ 完成
活动编辑 (E-E)12100%✅ 完成
状态机 (E-S)8100%✅ 完成
数据看板887.5%⚠️ 部分
会员管理1050%→深测✅ 深测完成
表单配置1258%→深测✅ 深测完成
系统设置24部分⚠️ 部分
Banner 管理8完成
管理员管理10完成
操作日志8完成

发现的 Bug

Bug ID模块严重度描述状态
BUG-001渠道码P2渠道码无法编辑/删除✅ Fixed
BUG-002前端Low手机视口 /login 白屏✅ Fixed
BUG-003系统设置Low保存按钮无 Loading 状态✅ Fixed
BUG-004BannerLow图标按钮无 aria-labelOpen

关键经验教训

agent-browser 工具层面

  1. fill 不用 type — type 追加文本,fill 清空再输入
  2. open 命令不可靠 — 用 eval "window.location.href='url'" 更稳
  3. toast/弹窗先关再操作 — 先 press Escape 或点空白处
  4. 多命令串联易超时 — 拆成独立调用
  5. 图标按钮无 aria-label — 只能逐个点试功能

AI 测试方法论

  • snapshot 必须读完整 — 不能 grep 预期关键词(“删除” 漏掉了 “移入回收站”)
  • 每步截图留证 — screenshot 保存到 test-results/ 目录
  • Bug 验证必须多次复现 — 避免误报(BUG-001 操作日志为空是误报)
  • 严重程度看用户路径 — /login 白屏但用户走微信扫码不经过该页面

子代理测试的局限性

  • 子代理适合第一轮冒烟扫描,主代理做第二轮深测
  • 子代理不敢做破坏性操作(删除/封禁),不做完整闭环验证
  • 子代理报告格式需约定(追加 vs 覆盖),否则结果被覆盖

测试产出文件

~/.openclaw/workspace/test-results/
├── report-events-list-2026-03-06.md
├── report-event-management-2026-03-06.md
├── report-admin-full-2026-03-06.md
├── report-admin-deep-2026-03-06.md
├── report-events-regression-2026-03-07.md
├── test-plan-admin-full.md
└── bugs.md

测试账户

邮箱密码角色
dora@qq.comDora@qq1233admin
lisi@qq.comDora@qq1233user
zhangsan@qq.comDora@qq1233user

相关页面