第一步:Anaconda的安装
安装Anaconda的好处,比prenv网速快,并且拥有独立的python环境,再也不用烦恼用哪个python好了。
Anaconda的下载页参见官网下载,Linux、Mac、Windows均支持。
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
下载完,一直点击next。
同样输入conda info 测试
第二步:Playwright 的介绍
- Playwright 支持当前所有主流浏览器,包括 Chrome 和 Edge(基于Chromium)、Firefox、Safari(基于 WebKit) ,提供完善的自动化控制的 API。
- Playwright支持移动端页面测试,使用设备模拟技术可以使我们在移动 Web 浏览器中测试响应式 Web 应用程序。
- Playwright支持所有浏览器的 Headless 模式和非 Headless 模式的测试。
- Playwright的安装和配置非常简单,安装过程中会自动安装对应的浏览器和驱动,不需要额外配置 WebDriver 等。
- Playwright提供了自动等待相关的 API,当页面加载的时候会自动等待对应的节点加载,大大简化了 API 编写复杂度。
第三步:playwright的安装
打开终端,输入以下命令
conda config --add channels conda-forge
conda config --add channels microsoft
conda install playwright # 安装playwright
playwright install # 安装驱动
验证是否安装成功
playwright -V
第四步:下载PyCharm
打开Anaconda软件,点击PyCharm下载按钮
新建一个项目,选择使用的环境,项目名即可。
使用一个简单的入门案例:
from playwright.sync_api import Playwright, sync_playwright, expect
def run(playwright: Playwright) -> None:
browser = playwright.chromium.launch(headless=False)
context = browser.new_context()
# Open new page
page = context.new_page()
# Go to https://www.baidu.com/
page.goto("https://www.baidu.com/")
# Click input[name="wd"]
page.locator("input[name=\"wd\"]").click()
# Fill input[name="wd"]
page.locator("input[name=\"wd\"]").fill("自动化测试")
# Click text=百度一下
page.locator("text=百度一下").click()
# ---------------------
context.close()
browser.close()
with sync_playwright() as playwright:
run(playwright)
点击运行
什么编译报错?
让我们找找是什么原因?哦,原来是playwright依赖找不到,怎么办,鼠标放到playwright这行代码上,这时就有一个红色警告,我们点击这个红色灯泡,idea会提示"安装playwright软件包",那么我们安装试一试。
安装后,再次执行
没问题了。
再看看它是怎么运行的,我们在context.close()打上断电。
调式运行
结果出来了
测试结果出来了。
可是我们写脚本,好麻烦怎么办。
别担心,playwright拥有屏幕录制功能,它能自动帮助我们完成代码编写。
只需要在终端输入命令
playwright codegen
我们点击页面那里,输入什么信息,playwright都会帮我们生成对应的代码。
这样我们只需要测试一次,后面的所有测试,就不需要再次跑页面了,而只需要运行一下程序就完事了。
当然,这个脚本还需要你的优化,避免测试用例的数据一模一样,这时就需要你的介入,规定好测试数据,通过代码模拟一些特定的测试数据,如果你的模拟数据写的好,前提是你的需求不会出现巨大变动,这个脚本都不会再出现新的变动。