最新出炉 -Web自动化测试之playwright:概述

playwright是由微软开发的Web UI自动化测试工具, 支持Node.js、Python、C# 和 Java语言,本文将介绍playwright的特性以及它的简单使用。

目录

目录

Web自动化测试之playwright:概述

playwright特性

安装

命令行工具

脚本录制

打开网页

截图

同步和异步API

浏览器

浏览器上下文

多页面

断言

playwright Robot Framework库

常见报错

Node版本问题

安装msedge报错


playwright特性

playwright具有以下特点:

一、支持所有主流浏览器

  • 支持所有主流浏览器:基于Chromium内核的Google Chrome 和 Microsoft Edge浏览器), WebKit内核的Apple Safari 和 Mozilla Firefox浏览器,不支持IE11。
  • 跨平台:Windows、Linux 和macOS
  • 可用于模拟移动端WEB应用的测试,不支持在真机上测试。
  • 支持无头模式(默认)和有头模式

二、快速可靠的执行

  • 自动等待元素
  • Playwright基于Websocket协议,可以接受浏览器(服务端)的信号。selenium采用的是HTTP协议,只能客户端发起请求。
  • 浏览器上下文并行:单个浏览器实例下创建多个浏览器上下文,每个浏览器上下文可以处理多个页面。
  • 有弹性的元素选择:可以使用文本、可访问标签选择元素。

三、强大的自动化能力

  • playwright是一个进程外自动化驱动程序,它不受页面内JavaScript执行范围的限制,可以自动化控制多个页面。
  • 强大的网络控制:Playwright 引入了上下文范围的网络拦截来存根和模拟网络请求。
  • 现代web特性:支持Shadow DOM选择,元素位置定位,页面提示处理,Web Worker等Web API。
  • 覆盖所有场景:支持文件下载、上传、OOPIF(out-of-process iframes),输入、点击,暗黑模式等。

安装

Playwright有Node.js、Python、C# 和 Java语言版本,本文介绍Python版本的Playwright使用方法。

Playwright的Python版本仓库地址:https://github.com/microsoft/playwright-python

官方文档地址:Getting started | Playwright Python

Playwright安装简单,pip安装时会自动下载浏览器驱动:

pip install playwright
playwright install # 安装支持的浏览器:cr, chromium, ff, firefox, wk 和 webkit
playwright install chromium # 安装指定的chromium浏览器

安装时会自动下载浏览器依赖,windows系统在%USERPROFILE%\AppData\Local\ms-playwright 路径下。

命令行工具

脚本录制

在命令行窗口使用如下语法格式进行脚本录制:

npx playwright codegen [options] [url]

options参数:

  • -o, --output <file name> :保存生成脚本
  • --target <language> :生成的脚本语言,可以设置javascript, test, python, python-async和csharp,默认为python。
  • -b, --browser <browserType> :要使用的浏览器,可以选择cr, chromium, ff, firefox, wk和webkit,默认chromium。
  • --channel <channel>:chromium版本,比如chrome, chrome-beta, msedge-dev等,
  • --color-scheme <scheme>:模拟器的颜色主题,可选择light 或者 dark样式。
  • --device <deviceName> :模拟的设备,比如iPhone 11。
  • --save-storage <filename> :保存上下文状态,用于保存cookies 和localStorage,可用它来实现重用。例如playwright codegen --save-storage=auth.json
  • --load-storage <filename> :加载--save-storage 保存的数据,重用认证数据。
  • --proxy-server <proxy> :指定代理服务器
  • --timezone <time zone> : 指定时区
  • --geolocation <coordinates> :指定地理位置坐标
  • --lang <language> :指定语言/地区,比如中国大陆:zh-CN
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值