pytest-playwright安装
pytest-playwright是playwright框架的一个插件,也是python的一个库。pytest-playwright插件完美的继承了pytest 用例框架和playwright基础使用的封装,基本能满足工作中的常规需求了,不需要我们再做额外的插件开发。
而且Playwright 建议使用官方的 pytest-playwright 插件来编写端到端测试。它提供上下文隔离,开箱即用地在多个浏览器配置上运行。或者,您可以使用该库使用您喜欢的测试运行程序手动编写测试基础设施。Pytest 插件使用 Playwright 的同步版本,还有一个可通过库访问的异步版本。
pytest-playwright安装:
pip install pytest-playwright
安装所需的浏览器:
playwright install
我们会发现这个安装步骤跟playwright的安装过程一样,实际上直接执行本安装步骤,playwright就一起安装好了,不需要单独安装playwright再安装 pytest-playwright
下面我们看一个用例的实例,需要注意的是,安装了pytest-playwright后不需要创建爬个对象了,直接使用内置的前置Page即可。
# '''
# author=测试-老姜 交流微信/QQ:349940839
# 欢迎添加微信或QQ,加入学习群共同学习交流。
# QQ交流群号:877498247
# 西安的朋友欢迎当面交流。
# '''
from playwright.sync_api import Page, expect
import pytest
def test_example1(page: Page): # 直接在用例函数里声明一个Page
page.goto("http://127.0.0.1:8080/oa/")
page.locator("input[name=\"loginId\"]").fill("sup")
password_input = page.locator("input[name=\"password\"]")
password_input.fill("s1234567")
page.get_by_role("button", name="登录").click()
# 以网页标题断言
expect(page).to_have_title('协同管理-协同办公系统-苏鹏')
if __name__=='__main__':
case_path = r'D:\xxxx\test_xxx.py'
pytest.main(['-s',case_path])
当前用例执行时,是默认使用chrome浏览器以无头模式执行。