Playwright介绍、特点、小例子还有与传统selenium的区别

介绍:

Playwright 是由微软开发并开源的一个现代化 Web 自动化测试框架。自2020年发布以来,它凭借可靠、快速、强大的特性,正在成为 Web 端到端(E2E)测试的新一代主流工具。

特点:

跨浏览器支持:统一的 API,就能在 Chrome、Edge、Firefox 、Safari三大主流浏览器引擎上运行测试,且不需要下载浏览器驱动,如selenium需要单独下载不同浏览器的驱动;

内置智能等待,告别"假失败":在执行点击、输入等任何操作前,它会自动等待元素变为可见、可操作和稳定,需要去写显示等待和隐示等待,还有可能因为等待设置市场不对导致找不到元素;

Web-First 断言,让检查更可靠:专门为动态 Web 应用设计的,它会自动重试,直到条件满足或超时,而不是只检查一次就失败,二不需要去设置失败重试次数;

测试隔离,并行执行互不干扰:每个测试都在独立的 "浏览器上下文" (Browser Context)中运行,相当于一个全新的、干净的浏览器会话。这使得测试可以安全、高效地并行执行,并且一个测试的失败完全不会影响其他测试;

强大的调试与追踪能力:当测试失败时,可以生成包含操作视频、DOM 快照、执行轨迹和网络请求的详细报告,帮助你快速定位问题根源;

通信协议:playwright基于 WebSocket,持久连接,速度更快,而selenium基于http协议,每次操作都需要重新连接;

环境:

1、安装python高版本:必须python3.7+,如果你电脑的python是低于python3.7是无法安装playwright,需要重新安装高版本(如果历史你有老项目的话建议不卸载,他将影响你老项目的运行比如报错崩溃),可重新安装一个目录,在配置环境变量path;

2、pycharm软件建立新项目时,可以选择新版本的python解释器;

3、安装pip:如果你的安装命令pip还是老版本解释器(原因pip安装在老版本解释器上),需要重新安装pip。python -m pip install --upgrade --force-reinstall pip

4、安装playwright包:命令如下pip install playwright

5、安装浏览器二进制文件:命令入下:playwright install

示例

playwright

  1. 启动浏览器-》打开百度页面-》打印页面标题-》关闭浏览器
  2. 代码如下:
python 复制代码
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch() #浏览器对象实例化,启动浏览器
    page = browser.new_page()   #创建空白页面
    page.goto("https://www.baidu.com") #根据url建立连接
    print("页面标题:", page.title()) #打印页面标题
    browser.close()  #关闭浏览器

结果如下:

selenium

  1. 启动浏览器-》打开百度页面-》打印页面标题-》关闭浏览器

  2. 代码如下:

python 复制代码
from selenium import webdriver

driver=webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com")
print(driver.title)
driver.close()

结果入下:

得出结论:

1、playwright:launch() 的默认值是 headless=True(无头模式)。在无头模式下,浏览器在后台运行,没有图形界面,且架构/驱动程序(Playwright 捆绑浏览器二进制文件,所以无需驱动程序;---所以没有弹出浏览器页面,直接得出结果,速度更快;

2、selenium:必须下载同浏览器相匹配的浏览器驱动,需要通过浏览器驱动打开浏览器,速度慢,且还需要等待页面加载;

相关推荐
ClouGence1 天前
不搭 Selenium 或 Playwright,怎么测试公司的内网业务?
selenium·测试
螺丝钉tina6 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
梧桐1687 天前
14天、31个缺陷、28个测试脚本—用 Claude Code 完成第三方软件测试
人工智能·测试工具
mewowaBc8 天前
postman使用细则
测试工具·postman·偏差
光影6278 天前
Unittest单元测试基础速记
测试工具·单元测试·json·测试覆盖率
xie881018028 天前
正则里的点号不匹配换行:多行模式的开关
运维·服务器·测试工具
2601_967987379 天前
Python在自动化测试中有哪些应用?
python自动化测试·selenium·appium·pytest·性能测试
东舟技术9 天前
从人工目检到AI视觉:智能座舱瞬态故障的自动化捕获与溯源
功能测试·测试工具·自动化
小猿A10 天前
【2026最新】Apifox下载、配置、实战教程(附官网安装包)
测试工具
泽众云测试11 天前
泽众软件与广州华南检验检测中心签约,PerformanceRunner性能测试工具助力第三方测评机构性能检测能力升级
软件测试·测试工具·性能测试