配置allure生成精美测试报告
allure用来生成精美测试报告
安装依赖包
# 依赖库
pip install -U pytest
# sugar用来显示命令行的进度条,优化运行效果
pip install pytest-sugar
# pytest的插件依赖模块
pip install pytest-dependency
# 重新运行错误用例
pip install pytest-rerunfailures
# 多cpu分发分布式执行
# pip install pytest-xdist
# pytest-parallel比pytst-xdist要更好。
pip install pytest-parallel
# 加强断言,可以N条断言
pip install pytest-assume
# 生成漂亮的allure报告-必装
pip install allure-pytest
# 测试报告-默认的不好用
#pip install pytest-html
#集成selenium----不好用
#pip install pytest-selenium
控制函数执行顺序
#给需要控制的函数加装饰器
# @pytest.mark.run(order=数字)
# 0是最高优先级
# 同为正数或负数时,数字越小,优先级越高
# 正数和负数同时存在时,正数优先级高
pip install pytest-ordering
# pytest-playwright 是pytest结合微软playwright
pip install pytest-playwright
# 不要安装pytest-allure-adaptor ,会报错
allure安装:
参考地址: https://blog.csdn.net/weixin_39997037/article/details/113403480
官网地址:https://docs.qameta.io/allure/
GitHub : https://github.com/allure-framework/allure2
安装jdk
allure程序依赖Java
# allure需要依赖jdk,需要先安装jdk
## jdk8
choco install jdk8 -y
# 验证下java版本和javac版本
java --version
javac --version
下载安装allure
mac安装allure
# mac安装allure
brew install allure
Windows和Linux安装
# allure下载地址
https://github.com/allure-framework/allure2/releases
# 下载allure-2.14.tgz或allure-2.14.zip 都可以
# 解压allure,然后讲/allure/bin 添加到path下
验证allure是否安装成功
# 命令行中输入allure查看allure是否配置成功
allure --version
python环境使用allure需要安装allure-pytest库
# 安装allure-pytest插件
pip install allure-pytest
添加environment 配置文件
该文件用来存储allure配置信息
方法一:environment.properties 文件
在allure
的report根目录
下添加一个 environment.properties
文件
文件里面添加环境配置,格式如下
# OS版本
systemVersion=win10
# Python解释器版本
pythonVersion=3.8
# allure版本
allureVersion=2.14.0
# 被测项目url
baseUrl=http://192.168.0.237
# 项目名称
projectName=auto_ui_test_hld
# 作者
author=qiaofei
生成allure报告
需要操作层Handle类
下的方法添加装饰器@allure.step("步骤描述")
Proxy类
下的流程方法添加装饰器@allure.feature("模块描述")
或者在pytest.ini
配置文件中添加参数
在配置文件中添加参数后,直接在命令行下执行pytest即可生成报告数据(json)
[pytest]
# report是测试报告的目录
addopts = -s -v --alluredir report --clean-alluredir
# --clean-alluredir参数意思是清除上一次报告数据
测试报告中添加截图
将下列代码添加到测试用例当中的断言之前即可.
with allure.step("截图"):
# 断言失败截图
fail_png_filename = self.base_get_str_time()
# 保存截图到指定目录
self.GetDriver.get_web_driver().get_screenshot_as_file(f"img/{fail_png_filename}.png")
# 将上一步截图附加进测试报告,attachment_type是指定附加的文件类型
allure.attach.file(f"img/{fail_png_filename}.png", attachment_type=allure.attachment_type.PNG)
测试报告中添加严重级别
# 在测试用例脚本的方法上添加@allure.severity(allure.severity_level.BLOCKER)
# 参数有5个,对应不同的优先级,只需要将最后一个词换掉即可,!!!!参数是全大写
1. BLOCKER #最严重
2. CRITICAl # 严重
3. NORMAL #普通
4. MINOR #不严重
5. TRIVIAL #最不严重
根据测试报告数据生成测试报告html文件
# 将report目录下的json数据转换成html测试报告文件
allure generate report/ -o report/html --clean
# 生成html报告之后,手动打开html报告即可查看
浏览器查看测试报告
# 将报告用默认浏览器自动打开:
# allure serve 测试报告目录
allure serve ./result/测试报告
# 方法2
打开报告:allure open -h 127.0.0.1 -p 8883 ./report/html
# 8883:端口号,自定义
# 127.0.0.1:本地网址
# ./report:步骤2中生成的./report