用途:为 Web 应用编写和维护端到端测试,验证完整用户旅程。资料以 Playwright 为主,Cypress 仅标注差异;Selenium/Puppeteer 定位为遗留或仅 Chrome 的自动化,不建议用于新项目。E2E 被视为测试金字塔顶端,应保持精简,只覆盖关键路径,逻辑用例下沉到单元/集成测试。
主要能力:框架选型建议(新套件默认 Playwright,理由是多浏览器含 WebKit、多标签/跨源、进程外网络拦截、内置并行与 trace viewer、支持 Python/.NET/Java 绑定);选择器优先级(role+可访问名、label/placeholder/text、data-testid、CSS,避免 XPath 与索引);自动等待与显式等待;网络拦截与错误注入;页面对象模型(POM);fixtures 与 storageState 认证复用;浏览器不稳定性防治;trace/视频/截图调试;视觉回归;API+UI 混合模式;跨浏览器范围与冒烟套件。
必要用法:初始化命令为 npm init playwright@latest;调试命令包括 npx playwright test --trace on、npx playwright show-trace trace.zip、npx playwright test --debug。配置中可设 testDir、fullyParallel、forbidOnly、retries、reporter、baseURL、trace、screenshot、video、webServer 与 projects。认证可先登录一次并保存 storageState 到 e2e/.auth/user.json 复用。
限制与注意:禁止使用 waitForTimeout/sleep,等待应针对条件、URL 或响应;retries 只用于暴露而非掩盖不稳定;视觉基线需在 CI 同一容器生成并屏蔽动态区域;CI 中开启 forbidOnly 防止 .only 残留;trace/视频/截图仅在失败时保留并上传为 CI 产物。资料未提供具体收费、价格或平台支持信息。