介绍
为什么选择Why Playwright?
Playwright能够在所有现有浏览器中实现快速、可靠和功能强大的自动化。为了帮助您为自动化测试选择合适的工具,本指南介绍了它最重要的特点。
支持所有浏览器
- 支持Chromium, Firefox and WebKit浏览器。Playwright对现有浏览器有完整的API覆盖,包括Google Chrome和Microsoft Edge(使用 Chromium)、Apple Safari(使用 WebKit)和Mozilla Firefox。
- 跨平台WebKit测试。通过Playwright,使用适用于Windows、Linux和macOS的WebKit版本,测试应用程序在Apple Safari中的表现。在本地和持续集成工具(CI)上进行测试。
- 支持移动端测试。使用设备仿真在移动web浏览器中测试您的响应式web应用程序。
- 支持无头模式和有头模式。Playwright支持所有浏览器和所有平台的无头模式(无浏览器用户界面)和有头模式(有浏览器用户界面)模式。有头模式非常适合调试,我无头模式速度更快,适合于CI/云执行。
快速可靠地执行
- 自动等待API。Playwright会等待元素准备好。这提高了可靠性并简化了测试编写。
- 无超时自动化。Playwright接收浏览器信号,如网络请求、页面导航和页面加载事件,以消除睡眠超时的需要。
- 基于浏览器上下文的精益并行化。对具有浏览器上下文的多个并行、孤立的执行环境重用单个浏览器实例。
- 弹性的元素选择器。Playwright可以依靠面向用户的字符串,比如文本内容和辅助功能标签来选择元素。这些字符串比紧密耦合到DOM结构的选择器更有弹性。
强大的自动化功能
- 多个域、页面和框架。playright是一个进程外自动化驱动程序,它不受页面内JavaScript执行范围的限制,并且可以自动执行具有多个页面的场景。
- 强大的网络管理。Playwright将上下文范围的网络拦截引入到存根和模拟网络请求中。
- 现代web特性。Playwright通过shadow-piercing selectors、geolocation、permissions、web workers和其他现代web API支持web组件。
- 涵盖所有场景的能力。支持file downloads和uploads,进程外iframe,本地input events,甚至dark mode。
与您的工作流程整合
- 单行本安装, 。运行playwright自动下载浏览器依赖关系,让您的团队快速上手。
- 支持TypeScript。Playwright内置了自动完成和其他优点的类型。
- 调试工具。Playwright 和the editor debugger and browser developer tools一起使用,可以暂停执行并调试页面。
- 语言绑定。Playwright可用于Node.js Python,C#和Java。
- 将测试部署到CI。第一方Docker映像和GitHub Actions 将测试部署到您首选的CI / CD提供商。
限制
- 不支持旧版Edge和IE11。Playwright不支持传统的Microsoft Edge或IE11,支持新的Microsoft Edge (在Chromium上)。
- 在真实移动设备上测试: Playwright使用桌面浏览器来模拟移动设备。