Selenium — Playwright 自动化测试框架
本文出自霍格沃兹测试开发学社学员笔记
Playwright 简介
Playwright 官网:
Web 自动化测试框架。
跨平台多语言支持。
支持 Chromium、Firefox、WebKit 等主流浏览器自动化操作。

Playwright 的优点
支持所有流行的浏览器。
速度更快,更可靠的执行。
更强大的自动化测试配置。
强大的工具库:Codegen、Playwright inspector、Trace Viewer。
Playwright 原理
scale 1000
participant 编程语言 as p
participant Playwright as playwright
participant puppeteer
participant 浏览器 as browser
p -> playwright: 编程语言调用 playwright 库
playwright -> puppeteer: 调用 puppeteer 工具
puppeteer <-> browser: 通过 Chrome DevTools 协议(基于 Websocket),调用浏览器
Playwright 与 selenium 对比

Playwright 核心工具
Codegen:通过记录你的操作来生成测试。 将它们保存为任何语言。
Playwright inspector: 检查页面、生成选择器、逐步执行测试、查看点击点、探索执行日志。
Trace Viewer:捕获所有信息以调查测试失败。 Playwright 跟踪包含测试执行截屏、实时 DOM 快照、动作资源管理器、测试源等等。
Playwright 环境安装
安装 playwright 插件
pip install pytest-playwright
安装所需的浏览器
playwright install
Codegen
其他参数:https://playwright.dev/python/docs/codegen
Codegen-保存登录状态
场景:单点登录、验证码问题
Playwright 常用 API

Playwright 使用实例
Trace Viewer
Trace Viewer 使用
trace 在代码中的配置
browser = chromium.launch()
实例化一个新的 context
context = browser.new_context()
设置 trace 的参数信息
context.tracing.start(screenshots=True, snapshots=True, sources=True)
使用 context 生成的 page 实例进行对应的操作
page = context.new_page()
结束追踪
context.tracing.stop(path = "trace.zip")
打开 trace
playwright show-trace trace.zip
评论