微软在 2020 年初开源的新一代自动化测试工具,它的功能类似于 Selenium、Pyppeteer 等,都可以驱动浏览器进行各种自动化操作。它的功能也非常强大,对市面上的主流浏览器都提供了支持,API 功能简洁又强大。虽然诞生比较晚,但是现在发展得非常火热。
Playwright 支持大部分的语言,Node.js,Python,Java,.net,并且支持谷歌,火狐浏览器,WebKit,对于移动端也支持,可以在 Windows、Linux、MacOs 等机器上运行。脚本执行支持同步或者异步的方式。
入库:https://playwright.dev/docs/intro
源码:https://github.com/microsoft/playwright-python
由于 Playwright 原生是通过 Nodejs 开发,如果有一定的代码经验且熟悉 nodejs 建议使用 npm、yarn 的方式安装
npm init playwright@latest
yarn create playwright
安装 python3.0 以上的版本,否则有可能出现版本不兼容的问题。
pip install playwright
playwright install
npx playwright codegen --viewport-size=800,600 jd.com
--viewport-size 指定窗口大小,非必填
jd.com:指定打开的链接,非必填
npx playwright test 脚本名称 --debug
比如:npx playwright test test.spec.js --debug
playwright 目前不支持图片比对命令,但是可以通过安装依赖实现图片的比对操作,如果操作步骤如下:
a、npm install odiff【基于像素的比对】
b、npm install img-ssim【图片相似度对比,分别从亮度、对比度、结构三方面度量,值越大越相似】
c、npm install mocha【非必需,nodejs 测试库】
d、npm install mochawesome【非必需,生成测试报告】
e、npm install istanbul【js 单元测试覆盖率】
a、 npm install mockiavelli -D
b、 引入依赖:import { Mockiavelli } from 'mockiavelli';
c、实例化
d、mock 接口
e、调用接口 mock
### 其他命令的细节,请参见官网。