Playwright现代化端到端(E2E)自动化测试框架

1.Playwright 是什么

Playwright 是一个支持多浏览器的自动化测试工具,可以用来:

  • 自动化 UI 测试(最常见)
  • 爬虫 / 自动化操作网页
  • 性能和交互验证

简单理解:用代码控制浏览器,就像真人在操作网页一样


2.核心特点

2.1多浏览器支持

Playwright 原生支持三大浏览器引擎:

  • Chromium(Chrome / Edge)
  • Firefox
  • WebKit(Safari 内核)

一套代码,跨浏览器运行


2.2自动等待(Auto-wait)

Playwright 会自动等待元素可操作:

1
await page.click('button');

不需要手动写,减少 flaky(不稳定)测试

1
await waitForSelector(...)

2.3强大的定位能力

支持多种选择器:

1
2
3
4
page.locator('text=登录')
page.locator('#id')
page.locator('.class')
page.getByRole('button', { name: '提交' })

推荐使用 语义化定位(getByRole)


2.4支持多语言

可以用以下语言编写:

  • JavaScript / TypeScript(最常用)
  • Python
  • Java
  • .NET(C#)

2.5无头 / 有头模式

  • Headless(无界面运行,适合 CI)
  • Headed(可视化运行,方便调试)

3.基本工作流程

  1. 启动浏览器
  2. 打开页面
  3. 操作页面
  4. 断言结果
  5. 关闭浏览器

4.Playwright vs Selenium

对比项 Playwright Selenium
速度 更快 较慢
自动等待 ✅ 内置 ❌ 需要手动
多浏览器 ✅ 原生支持
API 设计 现代、简洁 较老
稳定性 一般

结论:Playwright 是 Selenium 的现代替代方案