web ui自动化工具playwright
playwright是微软开源的一款web ui自动化工具,该工具有很多亮点,解决以前困扰web UI自动化测试的很多难点。这篇博客将介绍playwright主要特点。
playwright支持录制减少了编写成本
如果要使用playwright的录制功能,有两种途径,途径一是通过vscode,在vscode中安装playwright插件,插件中软件Record new即可开启录制模式,一边操作被测系统,一边会自动生成代码。途径二是通过命令“npx playwright codegen”。 通过录制方式可以提高编写代码效率,当然有时候录制过程中会卡顿,不继续生产代码,这个时候需要重新开启录制。当然现在的IDE功能如果安装了AI code插件,借助AI code插件也能极大提高编写UI自动化测试效率。
playwright inspector提高调试效率
使用命令“npx playwright test --ui”即可开启UI 运行模式,UI模式下可以查看错误原因以及发生错误的具体页面。另外,如果在vs code上运行test case,如果某个地方错误,playwright也会显示详细的错误信息,如下图所示。
除了UI mode外,playwright还支持debug,npx playwright test --debug即可开启调试模式,debug模式支持逐行运行代码,方便快速定位错误原因。
多种方式让测试更稳定
UI自动化测试,测试的稳定性非常重要,测试稳定性直接影响UI自动化测试维护成本。playwright同样内置了自动等待,大大提供了测试稳定性,另外,playwright还支持自动重试,可以在配置文件中设置retry次数,当某个case失败后,会自动进行retry,降低维护成本。
playwright vs cypress
cypress也是一款非常优秀的web UI自动化测试工具,cypress发布时间更早,在18年cypress发布一段时间后,笔者就将项目的web ui自动化工具替换成cypress,替换后,大大降低了web ui自动化测试维护成本。如果是今天,当我们需要web ui自动化工具时,可能会更偏向于playwright,下面是两个工具的对比。
playwright和cypress进行对比,playwright还是有一定优势的,一个是天然与IDE工具集成,编写调试成本都会降低不少,另外playwright支持不同的语言,适配性更强。
更多编写的具体细节可看官网,因为初始化code以及编写都非常简单,这里不再重复说嘛。