关于 playwright
playwright 是用于为 Web 应用生成并运行 Playwright 端到端测试的技能。它指导按项目现有模式编写测试,并通过跟踪记录、截图和交互式检查进行调试。
主要功能
- 01分析页面与预期行为
- 02按项目模式生成测试
- 03以有头或 UI 模式运行测试
- 04使用跟踪记录和截图调试
- 05测试视觉输出与无障碍性
适用场景
- 01测试网页导航和表单流程
- 02通过截图断言检查视觉变化
- 03利用跟踪记录排查失败原因
- 04验证键盘导航和 ARIA 角色
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ariadoss/ superskills --skill playwright安装后在 Claude Code 中输入/playwright确认已加载。
详细介绍
Playwright 端到端测试
为 Web 应用生成并运行 Playwright 端到端测试。
前置条件
npx playwright --version
如果尚未安装:
npm init playwright@latest
# or add to existing project:
npm install -D @playwright/test && npx playwright install
工作流
1. 分析
阅读要测试的页面或组件的源文件。了解路由、交互元素和预期行为。
2. 生成测试文件
按照项目现有的模式和目录结构创建测试文件。
import { test, expect } from '@playwright/test';
test.describe('Feature Name', () => {
test.beforeEach(async ({ page }) => {
// Setup: navigate, authenticate, seed data
});
test('should do expected behavior', async ({ page }) => {
// Arrange
// Act
// Assert
});
});
3. 运行测试
npx playwright test <file> # Run specific test file
npx playwright test --headed # With visible browser
npx playwright test --ui # Playwright UI mode
npx playwright test --trace on # Capture trace for debugging
4. 调试失败
- 仔细阅读错误输出
- 使用
--trace on并打开跟踪查看器:npx playwright show-trace trace.zip - 失败时截取屏幕截图:
await page.screenshot({ path: 'debug.png' }) - 在有头模式下使用
page.pause()逐步调试
功能
- 导航:
page.goto()、URL 断言、重定向验证 - 表单:
page.fill()、page.selectOption()、page.check()、多步骤向导 - 断言:
expect(page).toHaveURL()、expect(locator).toBeVisible()、toHaveText() - 屏幕截图:
page.screenshot()、整页截图、元素级截图 - 视觉回归:使用阈值的
expect(page).toHaveScreenshot() - 无障碍:
@axe-core/playwright、ARIA 角色选择器、键盘导航 - 网络:使用
page.route()进行模拟,使用page.waitForResponse()等待 API 调用
提示
- 使用
data-testid属性作为稳定的选择器 - 优先使用用户可见文本和 ARIA 角色,而非 CSS 选择器
- 对复杂的多步骤流程使用
test.step() - 在
playwright.config.ts中设置baseURL - 使用
page.waitForResponse()等待异步导航 - 将测试文件放在项目中符合现有测试模式的位置
评论
支持 Markdown