1.简介
1.为什么要学 Playwright ?
跨浏览器和平台
• 跨浏览器。Playwright 支持所有现代渲染引擎,包括 Chromium、WebKit (Safari
的浏览器引擎)和 Firefox。
• 跨平台。在 Windows、Linux 和 macOS 上进行本地测试或在 CI 上进行无头或有头
测试。
• 跨语言。在TypeScript、JavaScript、Python、.NET、Java中使用 Playwright API
• 测试移动网络。适用于 Android 和 Mobile Safari 的 Google Chrome 浏览器的本机
移动仿真。相同的渲染引擎适用于您的桌面和云端。
稳定性
• 自动等待。Playwright 在执行动作之前等待元素可操作。它还具有一组丰富的内省
事件。两者的结合消除了人为超时的需要——这是不稳定测试的主要原因。
• Web优先断言。Playwright 断言是专门为动态网络创建的。检查会自动重试,直到
满足必要的条件。
• 追踪。配置测试重试策略,捕获执行 跟踪、视频、屏幕截图以定位问题。
运行机制
浏览器在不同进程中运行属于不同来源的 Web 内容。Playwright 与现代浏览器架构保持一致,
并在进程外运行测试。这使得 Playwright 摆脱了典型的进程内测试运行器的限制。
• 多重一切。测试跨越多个选项卡、多个来源和多个用户的场景。为不同的用户创建
具有不同上下文的场景,并在您的服务器上运行它们,所有这些都在一次测试中完
成。
• 可信事件。悬停元素,与动态控件交互,产生可信事件。Playwright 使用与真实用
户无法区分的真实浏览器输入管道。
• 测试框架,穿透 Shadow DOM。Playwright 选择器穿透影子 DOM 并允许无缝地输
入帧。
完全隔离-快速执行
• 浏览器上下文。Playwright 为每个测试创建一个浏览器上下文。浏览器上下文相当
于一个全新的浏览器配置文件。这提供了零开销的完全测试隔离。创建一个新的浏
览器上下文只需要几毫秒。
• 登录一次。保存上下文的身份验证状态并在所有测试中重用它。这绕过了每个测试
中的重复登录操作,但提供了独立测试的完全隔离。
强大的工具
• 代码生成器。通过记录您的操作来生成测试。将它们保存为任何语言。
• 调试。检查页面、生成选择器、逐步执行测试、查看点击点、探索执行日志。
• 跟踪查看器。捕获所有信息以调查测试失败。Playwright 跟踪包含测试执行截屏、
实时 DOM 快照、动作资源管理器、测试源等等。
2.安装 playwright:
pip install playwright
安装所需的浏览器 chromium,firefox 和 webkit:
playwright install