web自动化测试框架playwright

一、背景:UI自动化的痛点:

1、设计脚本耗时:

需要思考要如何模拟用户的操作,如何触发页面的事件,还要思考如何设计脚本,定位和操作要交互的元素、路径、位置,再编写代码逻辑,往复循环数次,要不停在浏览器和代码编辑器中进行切换。

2、调试脚本耗时:

初步完成元素定位和操作的脚本后,还要一 一进行测试验证程序运行是否符合预期,要反复进行调试。

3、维护成本较高:

面向用户的界面的迭代变化频率较高,基于界面元素构建的测试脚本也要跟着变,那么我们面临的就是不停的更新维护既有的UI自动化脚本

思考:如何可以不用考虑定位元素、不用手写代码、并且降低维护成本地完成UI自动化流程?

二、简介与安装

1、介绍-特点

Playwright是一个由微软开发的自动化测试框架,通过“录制为主,编写为辅”的方式来完成测试脚本。

1)playwright的优点

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

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

3)强大的自动化能力
•playwright不受页面内JavaScript执行范围的限制,可以自动化控制多个页面。
•自动生成测试代码:Playwright提供了一个CLI工具,可以记录用户在浏览器中的操作,并生成相应的测试代码。
•强大的网络控制:Playwright 引入了上下文范围的网络拦截来存根和模拟网络请求。
•现代web特性:支持Shadow DOM选择,元素位置定位,页面提示处理,Web Worker等Web API。
•覆盖所有场景:支持文件下载、上传、输入、点击,暗黑模式等。
•支持主流编程语言:python、Java、Node.js、C#、.Net等

2)playwright的局限性

1) Playwright不支持旧版Microsoft Edge或IE11。所以对浏览器版本有硬性要求的项目不适用。

2) 需要SSL证书进行访问的网站可能无法录制,该过程需要单独定位编写。

3) 移动端测试是通过桌面浏览器来模拟移动设备,无法控制真机。

4) Playwright的社区规模相对较小,可能会导致在解决问题时的资源有限

3)与传统的selenium对比

2、安装playwright

建议使用镜像,不然比较慢

pip install playwright -i https://pypi.tuna.tsinghua.edu.cn/simple

安装成功

3、安装浏

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值