SuperAPI AI 工具集

agentic-browser-testing

智能体与模型

查看项目

更新于 10-16 03:41

技能介绍

用途:本技能用于目标驱动的端到端(E2E)浏览器测试。浏览器智能体(Playwright MCP / computer-use)读取一段自然语言目标,通过无障碍树自主探索应用,而非依赖预先写好的选择器。适合快速变动或探索性 UI;稳定高频关键路径(如登录、支付)仍建议用脚本化测试。

主要能力与交互模型:采用无障碍树优先方式。用 browser_navigate 打开预置入口 URL;browser_snapshot 返回角色的无障碍树,每个可交互元素带 role、稳定 ref 与可访问名称(约 200-400 token,确定性且便宜);智能体按 ref 调用 browser_click 或 browser_type;browser_wait_for 等待文本出现或消失,不用固定 sleep;DOM 变化后重新 browser_snapshot 并以该树做断言。截图仅作人类证据,不作断言输入。

确定性要求:同一目标、同一预置数据须得到同一判定。需固定模型 id(非 latest)、temperature 0、播种数据且每次运行前重置、有界步数预算(如 maxSteps=18,超限即失败)、显式通过/失败断言。避免 retry-until-pass、waitForTimeout、截图断言。

成功判定(Oracle):判定在智能体之外由测试框架执行,不允许 LLM 自评。以“登录并确认仪表盘显示正确账户名”为例:URL 匹配 /dashboard;快照包含特定预期账户名文本;负向检查——若仍在 /login 或出现 role=alert 且提示无效凭据则失败。框架输出 {"passed": true|false}。

成本与延迟:智能体运行比脚本慢 2-5 倍且更贵,一步即一次 LLM 往返。可通过低步数预算、模型分层(Haiku/Sonnet 处理导航,Opus 留给真正模糊的探索)、提示缓存、预置入口跳过登录、以快照代替截图来降低开销。

毕业与 CI 门禁:流程稳定后应转为持久脚本化测试。可用 Playwright Test Agents(planner/generator/healer,Playwright v1.56.0 起提供):npx playwright init-agents --loop=claude。CI 中失败须以非零退出并输出机器可读判定,不可 continue-on-error 或总是 exit 0。Canvas/WebGL 无无障碍树时,优先用 ARIA 标注;仅在特定流程启用 --caps=vision 作为受限兜底。

限制:并非所有测试都该用智能体;非确定性带来误通过风险,须以硬性断言约束。具体配置、MCP 注册、工具表与示例见 references/setup.md 与 references/graduation-and-ci.md。