软件测试|web自动化测试神器playwright教程(一)

boyanx4周前技术教程3

前言

提起web自动化测试框架,我们首先想到的就是selenium,selenium基本上成为了必选的web自动化测试框架,测试工程师也必须学这个框架的使用,web自动化测试用例也依靠这个框架去执行。

直到2020年,微软开源了一个名为——playwright的工具,与selenium一样,入门简单,支持多语言,所以playwright开始被更多人注意到了,它甚至比selenium更好用更强大。

playwright的优势

我们上面说了,playwright甚至比selenium更好更强大,那么playwright有哪些优势呢?

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

环境安装

Playwright 是专门为满足端到端测试的需要而创建的。Playwright 支持所有现代渲染引擎,包括 Chromium、WebKit 和 Firefox。在 Windows、Linux 和 macOS 上进行本地测试或在 CI 上进行测试。

注:playwright需要Python3.7或更新的版本

安装playwright只需要一条命令,就是pip安装命令,命令如下:

pip install playwright

安装好playwright之后,我们还需要安装所需要的浏览器,和selenium不同,我们不再是安装对应的浏览器驱动,所以不需要再头疼浏览器驱动版本的问题了。安装命令如下:

playwright install

运行命令后,会安装chromium,firefox 和 webkit浏览器,如下图:

注:如果安装报错,提示缺少Visual C++,则需要安装Microsoft Visual C++ Redistributable 2019

下载地址

直接点击就可以下载了,下载后直接安装即可。

总结

本文主要介绍了playwright的优势,以及讲解了playwright的安装,下一篇文章我们将介绍playwright的简单使用。

标签: js在线测试

相关文章

Linux下使用Speedtest测试网速

Speedtest是用来测试网络性能的开源软件,在Linux下面安装Speedtest可以用来测试网络出口的上传和下载速度,帮助排查网络方面导致的故障。Speedtest介绍由于公司几个项目用户访问的...

国产大模型助力自动化测试——让Midscene.js用上“东方大脑”

大家好,我是老李。前一段写了篇文章《UI自动化测试不求人,字节跳动开源基于AI大模型的UI自动化测试库》,介绍了字节跳动开源的AI驱动的自动化测试工具midscene.js,有朋友纷纷私信,国产大模型...

JavaScript性能测试:Edge优于Chrome和Firefox

微软欲将Edge打造成为全球最佳的网页浏览器,将Edge塑造成为高速、安全、低资源占用和长续航表现的典范。继此前表明Edge在续航方面的卓越表现之后在今天发布的博文中,公司再次表明在即将到来的Wind...

JavaScript 中问号的三种用法 ??和?.以及?: 的您知道吗?

最近看了一些关于JavaScript的测试脚本,觉得JS 中问号的用法还是蛮有意思的,于是做了一下总结,在这里分享给大家!JS中的问号大概有三种用法,分别是:空值合并操作符、可选链操作符和三目运算。问...

Javascript实现人脸检测 #前端开发

今天我们来探讨人脸检测。就像我们现在看到的这个界面一样,通过人脸检测技术,可以识别出用户的眉毛、眼睛、鼻子、嘴巴和下巴的轮廓,还可以判断用户的大致年龄和性别。下面,我们将详细介绍如何实现这一功能。实现...

云计算平台CartoDB发布开源工具Odyssey.js测试版

在这个世界上,总会发生点儿什么事情。这也正是开源工具Odyssey.js背后的逻辑。Odyssey.js利用地图将数据转变为交互式多媒体内容,同时还不需要用户具备专业的编程技能。在从KnightPro...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。