用途:整理 Playwright Test 的 E2E 最佳实践,供编写、评审测试与配置 CI 时参考。
主要能力:提供 playwright.config.ts 配置模板,包含 fullyParallel、CI 下 forbidOnly、retries、reporter、baseURL、trace/screenshot/video、projects 与 webServer;说明 GitHub Actions 基本流程与 shard 并行分割,以及 shard × browser matrix 的合并报告做法;给出 retry 策略与 trace/screenshot/video 的选择标准(on、on-first-retry、retain-on-failure、off);覆盖按浏览器条件 skip、flaky 检测(json reporter 与 jq 过滤);强调不使用固定 wait,改用 web-first assertion,并列出需显式等待的情形;说明网络触发、API 路由 mock、HAR 记录与回放、请求/响应断言、context 级路由;介绍 drag and drop 及对指针事件库的自定义实现;梳理 locator 优先级、模态框处理、断言、认证 storageState 复用、文件上传下载、Page Object Model 与调试命令(如 npx playwright test --ui、--trace on、show-report、page.pause())。
适用场景:编写或复审 Playwright E2E 测试、搭建 CI 流水线、排查 flaky 测试、处理网络与拖放等复杂交互。
限制:Ubuntu/Debian 默认缺少 CJK 字体,CI 需额外安装 fonts-noto-cjk、fonts-noto-color-emoji;--with-deps 不含字体。文档未提供具体收费、价格或平台支持信息。