用途:为存在真实用户流程、跨页导航、鉴权或真实网络的场景规划、生成、运行并修复端到端测试;不适用于单元或组件测试可覆盖的问题、纯重构,以及脱离真实流程的测试基础设施搭建。
主要能力:以 Markdown 功能规格为准,用 Planner 针对实际应用起草 specs/<flow>.md,经人工审阅后由 Generator 生成 tests/<flow>.spec.ts,在真实浏览器中经可访问性树运行,失败时由 Healer 自愈。定位器按 getByRole、getByLabel/getByPlaceholder/getByText、getByTestId 的顺序选取,缺少稳定定位器时提出加入 data-testid 的源码改动而非改用脆弱选择器。默认快照模式,不开启 --caps=vision;仅在变更规格上迭代运行 npx playwright test --last-failed,Healer 仅在失败时运行,复用 tests/seed.spec.ts 的 storageState 跳过重复登录,自愈循环上限 3 次。
使用方式:先执行 Phase 0 预检,检查是否安装 @playwright/test 与 @playwright/mcp、是否存在 specs/、tests/seed.spec.ts、playwright.config.ts,并确认 Playwright 版本不低于 1.56;缺失时先打印安装计划(如 npx playwright init-agents --loop=claude)并取得用户许可,不静默执行。通过后按规格生成、运行、验证;验证时需在真实应用上首次运行通过,并调用 test-provenance-guard 检查测试是否引用生产代码,确认 playwright.config.ts 中设置了 trace: 'on-first-retry'。自愈不收敛时调用 confidence(analysis),低于 90% 升级给用户并附 trace、规格与定位器改动建议。
适用场景:多页用户流程、鉴权、真实网络相关缺陷,以及既有不稳定测试的 Healer 修复。
限制:单元/组件层问题应交由 tdd;不可在保存时反复运行 Healer;不得用脆弱 CSS 选择器修补测试;无像素级需求不要启用视觉模式;不可在 CI 中保留 .skip();测试必须针对真实应用而非 stub 服务器。规则、参考与模板文件按需加载,不预先全部载入。其他细节暂未提供。