从零开始:使用 Playwright 脚本录制实现自动化测试

news/2024/9/23 23:26:40

前言

selenium中提供了一个selenium IDE的工具用于脚本录制,我们通过插件市场安装之后,便可以将我们对浏览器页面的操作录制成脚本,并输出成java或Python等语言的脚本,我们可以通过生成的脚本再次回放我们的操作。

作为一个比selenium更加强大的web自动化测试工具,当然也拥有录制的功能了,本篇文章我们就来介绍playwright的脚本录制功能。

录制脚本

Playwright 具有开箱即用的生成测试的能力,是快速开始测试的好方法。它将打开两个窗口,一个是浏览器窗口,您可以在其中与要测试的网站进行交互,另一个是 Playwright Inspector 窗口,您可以在其中记录测试、复制测试、清除测试以及更改测试语言。

启动命令如下:

playwright codegen http://网站地址

启动后,电脑上出现2个窗口,左边是浏览器打开网站可以操作,右边是inspector 可以生成对应的脚本,如下图:

我们以登录百度为例录制我们的脚本,我们使用输入账号以及密码的方式登录百度,如下:

我们输入完用户名密码之后,点击登录按钮,即可登录。

注:此处并没有使用真实账号,所以登录是失败的。

生成的代码如下:

from playwright.sync_api import Playwright, sync_playwright, expectdef run(playwright: Playwright) -> None:browser = playwright.chromium.launch(headless=False)context = browser.new_context()page = context.new_page()page.goto("https://www.baidu.com/")page.get_by_role("link", name="登录").click()page.get_by_placeholder("手机号/用户名/邮箱").click()page.get_by_placeholder("手机号/用户名/邮箱").fill("muller")page.get_by_placeholder("密码").click()page.get_by_placeholder("密码").fill("12345678")page.get_by_role("button", name="登录").click()# ---------------------context.close()browser.close()with sync_playwright() as playwright:run(playwright)

还可以选择生成异步代码

当然,作为Python爱好者,我还是喜欢直接生成Pytest测试用例代码,很好,playwright能满足我的要求

from playwright.sync_api import Page, expectdef test_example(page: Page) -> None:page.goto("https://www.baidu.com/")page.get_by_role("link", name="登录").click()page.get_by_placeholder("手机号/用户名/邮箱").click()page.get_by_placeholder("手机号/用户名/邮箱").fill("muller")page.get_by_placeholder("密码").click()page.get_by_placeholder("密码").fill("12345678")page.get_by_role("button", name="登录").click()

总结

通过本文的介绍,我们学习了如何使用 Playwright 脚本录制功能来创建自动化测试脚本。Playwright 提供了一个简单而强大的录制器工具,帮助开发人员轻松构建和维护测试用例。希望本文能够对你有所帮助,让你更好地掌握 Playwright 的使用技巧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/31134.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【未完】关于ConditionalOnClass注解

1. pom文件 标签 依赖配置文件我们经常接触到,但对<optional>标签理解可能一知半解(以我的角度,在这之前没有关注过),或者是你没看下面内容,都不知道optional应该放在什么地方。 <optional>标签在pom文件中长这样: <dependency><groupId>org.t…

02-Excel基础操作-学习笔记

01 替换 场景描述:在excel表中由“部门”列,将其中的’‘一部门’‘改为’‘一车间’‘在excel表中由“地区”列,上面记录着既有“苏州”又有“苏州市”,现在要求将‘’地区‘’所在列中的“苏州”改为“苏州市”。分班:将列表中的63名同学分成2个班级,3个班级又该如何操作…

鸿蒙HarmonyOS实战-ArkUI事件(组合手势)

🚀一、组合手势 应用程序的手势操作是指在移动设备上使用手指或手势进行与应用程序交互的方式。手势操作可以包括点击、滑动、双击、捏合等动作,用于实现不同的功能和操作。 HarmonyOS中常见的手势操作及其功能:组合手势是由多个手势组合而成的手势动作。通过不同手势的组合…

红外学习补充

人们习惯把红外发射管和红外线接收管称为红外对管。红外对管的外形与普通圆形的发光二极管类似。初接触红外对管者,较难区分发射管和接收管。本文介绍三种简便的识别方法。 1. 根据内部结构识别红外对管的内部结构如左图(a),(b)所示。左图(a)是红外发射管,管芯中央凹陷,类…

汇编语言——寄存器

寄存器 程序的本质软件/程序的执行过程硬盘中程序或者软件打开后,会被装载到内存中,由CPU进行读取内存中的机器指令,再由CPU控制计算机进行相应操作 CPU组成寄存器:信息存储 运算器:信息处理 控制器:控制其他器件进行工作寄存器与内存通常,CPU会先将内存中的数据存储到寄…

实例内使用百度网盘

在 GpuMall 平台的实例中,可以通过使用 baidupcs 命令工具来实现对个人百度网盘账号中的数据上传及下载操作,具体操作方法如下在 GpuMall 平台的实例中,可以通过使用 baidupcs 命令工具来实现对个人百度网盘账号中的数据上传及下载操作,具体操作方法如下: 立即免费体验:h…

LVGL --- 库介绍

examples 里面包含了各种小例程,但是不能直接执行。每个例程的母函数命名为 lv_example_xxx_x。 执行方法:在一个已经移植好的程序里面,包含头文件 lvgl/examples/lv_examples.h,然后直接调用例程的母函数,比如:

按图索骥,快速做好架构图

架构图是程序员必备的技能之一。很多同学觉得老是画不好架构图,且经常无从下手,那就看看下面这篇文章,笔者整理分享了关于架构图的相关内容,需要了解相关知识的同学可以进来看看哦!许多的小伙伴坦言画不好架构图,因为有很多困难阻碍了他们的进阶之路。 当你想用一张或几张…