用途:为某个功能规划并编写端到端 Playwright 测试,确保测试能运行且不 flaky。
主要能力与流程:
- 规划测试。使用 Playwright MCP 工具(如 mcp__playwright__browser_navigate、mcp__playwright__browser_click、mcp__playwright__browser_screenshot)与浏览器交互,探索后把测试计划提交给用户确认或修改。
- 实现测试。编写测试时使用相邻文件中的常见模式,运行命令:BASE_URL='http://localhost:8010' pnpm --filter=@posthog/playwright exec playwright test <file name> --retries 0 --workers 3。调试失败,必要时查看截图或启动 Playwright MCP 技能与浏览器交互,修复后回到步骤 1。
- 确保无 flaky。全部通过后,在命令中加 --repeat-each 10 重复运行以暴露 flaky 测试;若 10 次运行中有失败,视为真实失败,回到步骤 2 调试修复并重跑步骤 3,直到每个测试的每次运行都通过。
- 报告。全部通过后输出一行:Testing Complete。
规则:严格遵循 @playwright/README.md 中的最佳实践;UI 交互后始终断言 UI 变化,不要断言网络请求完成;持续循环直到所有测试通过,不放弃也不向用户求助,必须自行解决每个失败。
适用场景:在 posthog-foss 仓库中为功能编写端到端测试。
限制:依赖 Playwright MCP 工具、本地 BASE_URL 与 pnpm 环境;具体 README 内容、依赖版本等暂未提供。