新增编辑疑修/复制疑修用例 2. 接入接口池,处理用例依赖
本框架是基于Python+Pytest+Playwright+BDD的UI自动化测试框架。
本框架要求使用者对pytest_bdd和playwright有一定的了解才能上手使用。
对于框架任何问题,欢迎联系我!
pytest = "==6.2.5" loguru = "*" pytest-rerunfailures = "*" faker = "*" yagmail = "*" allure-pytest = "*" requests-toolbelt = "*" pytest-bdd = "*" sttable = "*" pytest-playwright = "*" pyhamcrest = "*" jsonpath = "*" pyyaml = "*"
通过Git工具clone代码到本地 或者 直接下载压缩包ZIP
https://gitlink.org.cn/floraachy/uiautotest_playwright.git
本地电脑搭建好 python环境,我使用的python版本是3.9。包括allure测试报告所需的java环境(安装jdk)。
安装pipenv
# 建议在项目根目录下执行命令安装 pip install pipenv
使用pipenv管理安装环境依赖包:pipenv install (必须在项目根目录下执行) 如果需要忽略特定的python版本,可以使用如下命令:pipenv install –python 3.8 –skip-lock
注意:使用pipenv install会自动安装Pipfile里面的依赖包,该依赖包仅安装在虚拟环境里,不安装在测试机。
安装playwright浏览器驱动
playwright install # 安装浏览器驱动
如上环境都已经搭建好了,包括框架依赖包也都安装好了。
config.settings.py
1)确认RunConfig的各项参数,可以调整失败重跑次数rerun, 失败重跑间隔时间reruns_delay,当达到最大失败数,停止执行max_fail 2)确认测试完成后是否发送测试结果,由SEND_RESULT_TYPE控制,并填充对应邮件/钉钉/企业微信配置信息 3)指定日志收集级别,由LOG_LEVEL控制
rerun
reruns_delay
max_fail
config.global_vars.py
1)删除 test_cases/features目录下所有的文件 2)删除test_cases/step_defs目录下所有以test_开头的文件(注意:conftest.py文件中的内容可以选择性保留) 3)删除page_objects目录下所有文件 注意:如果想先体验一下框架,可以先保留我写的示例用例。(另外体验需要一个测试账号,可联系我获取!)
test_cases/features
test_cases/step_defs
test_
page_objects
.feature
*_page.py
test_*py
此处需要对BDD知识有一定的了解,可以参考文章:Pytest-BDD行为驱动开发测试
在pycharm>terminal或者电脑命令窗口,进入项目根路径,执行如下命令(如果依赖包是安装在虚拟环境中,需要先启动虚拟环境)。 > python run.py (默认在test环境运行测试用例, 报告采用allure) > python run.py -m demo 在test环境仅运行打了标记demo用例, 默认报告采用allure > python run.py -env live 在live环境运行测试用例 > python run.py -env=test 在test环境运行测试用例 > python run.py -browser webkit 使用webkit浏览器运行测试用例 > python run.py -browser chromium webkit 使用chromium和webkit浏览器运行测试用例
注意:
run.py
https://pypi.org/project/playwright/ https://playwright.dev/python/docs/intro https://playwright.nodejs.cn/docs/intro
https://pypi.org/project/pytest-bdd/
https://pypi.org/project/pytest-playwright/ https://github.com/microsoft/playwright-pytest
如果这个库有帮助到你并且你很想支持库的后续开发和维护,那么你可以扫描下方二维码随意打赏我,我将不胜感激
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
一、框架介绍
本框架是基于Python+Pytest+Playwright+BDD的UI自动化测试框架。
本框架要求使用者对pytest_bdd和playwright有一定的了解才能上手使用。
对于框架任何问题,欢迎联系我!
二、实现功能
三、依赖库
四、安装教程
通过Git工具clone代码到本地 或者 直接下载压缩包ZIP
本地电脑搭建好 python环境,我使用的python版本是3.9。包括allure测试报告所需的java环境(安装jdk)。
安装pipenv
使用pipenv管理安装环境依赖包:pipenv install (必须在项目根目录下执行) 如果需要忽略特定的python版本,可以使用如下命令:pipenv install –python 3.8 –skip-lock
安装playwright浏览器驱动
如上环境都已经搭建好了,包括框架依赖包也都安装好了。
五、如何创建用例
1. 修改配置文件
config.settings.py1)确认RunConfig的各项参数,可以调整失败重跑次数
rerun, 失败重跑间隔时间reruns_delay,当达到最大失败数,停止执行max_fail2)确认测试完成后是否发送测试结果,由SEND_RESULT_TYPE控制,并填充对应邮件/钉钉/企业微信配置信息 3)指定日志收集级别,由LOG_LEVEL控制2. 修改全局变量,增加测试数据
config.global_vars.py3. 删除框架中的示例用例数据
1)删除
test_cases/features目录下所有的文件 2)删除test_cases/step_defs目录下所有以test_开头的文件(注意:conftest.py文件中的内容可以选择性保留) 3)删除page_objects目录下所有文件 注意:如果想先体验一下框架,可以先保留我写的示例用例。(另外体验需要一个测试账号,可联系我获取!)4. 编写测试用例
1. 在
test_cases/features目录新建一个.feature文件,按照BDD模式编写测试用例2. 基于page object模式,在
page_objects目录,新建一个*_page.py文件, 封装元素定位以及相关操作方法。3.基于
.feature文件, 在test_cases/step_defs目录下新建一个test_*py文件,导入相关pages,编写步骤函数,并且设置scenarios。此处需要对BDD知识有一定的了解,可以参考文章:Pytest-BDD行为驱动开发测试
六、运行自动化测试
1. 激活已存在的虚拟环境
2. 运行
注意:
run.py中右键运行七 、初始化项目可能遇到的问题
Playwright Documentation
https://pypi.org/project/playwright/ https://playwright.dev/python/docs/intro https://playwright.nodejs.cn/docs/intro
pytest-bdd Documentation
https://pypi.org/project/pytest-bdd/
pytest-playwright Documentation
https://pypi.org/project/pytest-playwright/ https://github.com/microsoft/playwright-pytest
赞赏
如果这个库有帮助到你并且你很想支持库的后续开发和维护,那么你可以扫描下方二维码随意打赏我,我将不胜感激