前言
Playwright
使现代 web
应用程序的端到端测试变得可靠。
任何浏览器 • 任何平台 • 一个 API
-
跨浏览器(Cross-browser):
Playwright
支持所有现代渲染引擎,包括Chromium
、WebKit
和Firefox
。 -
跨平台(Cross-platform):可以在
Windows
、Linux
和macOS
上进行测试,无论是本地还是CI
环境,支持 无头模式 或 有头模式。 -
跨语言(Cross-language):可以在
TypeScript
、JavaScript
、Python
、.NET
和Java
中使用Playwright
API。
测试移动 Web:原生模拟 Google Chrome(Android)和 Mobile Safari 的移动端。相同的渲染引擎可以在桌面和云端工作。
可靠 • 无不稳定测试
-
自动等待(Auto-wait):
Playwright
在执行操作前会等待元素变得可操作。它还提供了丰富的事件监控。两者结合消除了人工超时的需求——这是不稳定测试的主要原因。 -
Web 优先断言:
Playwright
的断言是专门为动态网页设计的。检查会自动重试,直到满足必要条件。 -
追踪:配置测试重试策略,捕获执行跟踪、视频和截图,以消除不稳定的情况。
没有妥协 • 无限制
浏览器将属于不同源的 Web 内容运行在不同进程中。Playwright
与现代浏览器架构保持一致,运行测试时是进程外的,这使得 Playwright
摆脱了典型的进程内测试框架的限制。
-
多重场景:测试跨多个标签页(
tabs
)、多个源(origins
)和多个用户的场景。为不同用户创建不同上下文的场景,并在同一个测试中对服务器进行测试。 -
可信事件:悬停元素、与动态控件交互、触发可信事件。
Playwright
使用与真实用户完全相同的浏览器输入管道。 -
测试框架,穿透 Shadow DOM:
Playwright
的选择器能够穿透 Shadow DOM,允许无缝进入框架。