用途:作为 Playwright 端到端(E2E)测试的专家技能,在用户要求编写、审查或调试 Playwright E2E 测试时提供规范指导。核心原则是以用户视角编写测试、优先使用弹性选择器、依赖自动等待、保证测试隔离并保持可读性。
主要能力:
- 项目结构:建议 tests/e2e、fixtures、pages、utils 及 playwright.config.ts 的目录组织。
- 页面对象模型(POM):通过 BasePage 与具体页面类封装选择器与操作。
- 选择器优先级:getByRole > getByLabel > getByPlaceholder > getByText > getByTestId > CSS/XPath(最后手段)。
- 断言:使用可自动重试的 web-first 断言,覆盖可见性、文本、值、URL、标题、计数、CSS 与截图比较。
- Fixtures 与认证:通过 base.extend 定义自定义 fixtures,并用 storageState 复用登录状态(auth.setup.ts)。
- 配置:定义 testDir、并行、重试、报告器、baseURL、trace、截图、视频及多浏览器(chromium/firefox/webkit)与移动设备项目。
- 常见场景:多步向导、对话框、文件上传、iframe、网络请求拦截与响应等待、下拉选择。
使用方式:在需要时按此技能约定编写 page 类与 spec 文件;调试可用 npx playwright test --headed、--ui、--debug,生成代码用 npx playwright codegen,查看追踪用 npx playwright show-trace trace.zip。
适用场景:Web 应用的登录、仪表盘、结算等用户旅程的自动化回归与质量保障。
限制与注意:资料未提及该技能的安装命令、收费、价格与平台支持信息;资料给出的反模式包括使用 waitForTimeout、测试间共享可变状态、测试实现细节、过于具体的 CSS 选择器、测试第三方服务本身等。