当前位置:网站首页>playwright录制脚本
playwright录制脚本
2022-08-05 17:59:00 【51CTO】
我喜欢Playwright! 这是微软开源的一款非常强大的自动化工具,再过几年,他很有可能取代Selenium在浏览器自动化的通知地位。使用过一段时间,我没有找到很好的中文资料可以参考,导致很多问题无法得到及时解决,因此我决定自己记录一下使用的笔记,算是给社区回馈。
在编写 web 自动化测试用例时,代码编写的速度是否快,会影响框架的使用体验。现在很多的框架都会提供一些辅助功能,帮助我们更快的去编写自动化测试代码,而录制功能是几乎所有的web自动化工具都会带的功能。 在实际操作过程中,有 2 个问题影响代码编写速度。第一个问题,每次操作前都需要先定位元素,需要编写元素定位选择器,这需要我们频繁查看网页的源代码,如果元素选择器编写不够规范,会引发测试用例失败。第二个问题,每一步操作都要调用对应的api函数,如果这些函数使用不规范,也会影响编程的速度和用例通过。
录制功能帮助我们解决这些问题。使用录制功能时,自动打开浏览器,接下来我们可以手工在浏览器页面上进行操作,每个操作步骤都会被录制器记录一下,以代码的方式生成在录制界面。 当浏览器操作完成后,可以在界面上暂停录制,也可以复制已经生成的代码,保存到代码文件中。
在编写正式的测试用例代码前,先通过录制功能把测试用例步骤录制下来,自动生成元素的定位方式,自动调用浏览器操作,会节省很多编写元素选择器的时间,有部分 API 函数记不清楚用法的,录制功能也会帮你自动生成。
通过命令行的 codegen 参数可以启动录制界面。
弹出浏览器和代码生成界面,在界面的菜单栏可以停止录制,复制代码。代码可以选择 Python, Java 或者 JavaScript 等主流语言。手工创建一个代码文件保存复制的代码。

录制好的代码会存在一些不必要的操作,可以直接删除这些不必要的代码,还会有元素定位的方式不时很合理,需要进一步修正。
虽然录制会存在一些小问题,但是他能快速生成样板代码,提高我们编写自动化测试代码的效率。之后的操作我们都可以沿用这种模式,先通过录制生成样板代码,再进行小幅度修改后使用。
playwright inspector 除了可以进行录制,还可以辅助元素定位。 当暂停录制后,在页面下方会出现辅助定位的控件,当输入元素定位表达式后,对应的页面元素将会高亮显示。
目前还不支持生成 pytest 插件的代码,所以主要还是复制元素定位方式和函数的用法,不能完全照搬。

边栏推荐
- 《进阶指南》0x01 复盘
- Time-series database selection and implementation practice for Xingsheng optimal monitoring scenarios
- How to become a qualified DBA?See what the "old fritters" have to say
- fast-request-2.1.3 免费版
- dom操作控制video倍速播放
- rk3399 休眠唤醒standby调试指南
- Which platform is the best for futures account opening? I want this kind of formal and safe company
- 铸就算网新未来!《移动云向算力网络演进白皮书》发布
- A new generation of host security four big core technologies and 15 application scenario
- 文末送书 | CCF优秀博士论文丛书:搜索引擎中的实体推荐关键技术研究
猜你喜欢
随机推荐
浓情七夕,有礼相送!
新一代主机安全4大核心技术和15大应用场景
cpalgotithm安装大坑
DRM架构下如何点亮一块屏
寻找OpenConfig Yang和IETF Yang的前世今生:2.Yang的语法结构
如何选择一款真正好用的远程控制软件
How to activate the latest version of IntelliJ IDEA 2022.2
rpm打包
PG 的 statistics 与 extended statistics
本周投融报:NFT工具受资本青睐
puzzle(005)单元拼接问题
历史上的今天:第一位图灵奖女性得主;NVIDIA 收购 MediaQ;首届网络安全挑战大赛完成...
dom操作控制video倍速播放
uniapp中用canvas实现小球碰撞的小动画
ansible批量添加巡检服务器
生成扩散模型漫谈:DDIM = 高观点DDPM
编译器工程师眼中的好代码(1):Loop Interchange
LTC6911 采用 MSOP 封装并具数字可编程增益的双匹配放大器
【论文阅读】Multi-view Multi-instance Multi-label Active Learning
时域同步平均TSA学习笔记









