Pytest报告生成方式:
- 生成兼容Junit风格的报告
Junit风格xml报告:pytest --junitxml=path - 生成HTML风格报告
Pytest-html报告:pytest 测试文件 --html=report.html --self-contained-html(可进行汉化,需要下载汉化包)
Allure报告:pytest 测试文件 --alluredir ./reports/report
生成allure报告的前提是allure模块,以及配置allure服务,以下是相关步骤:
安装allure
使用命令:pip install allure-pytest
配置allure服务
1、下载:https://github.com/allure-framework/allure2/releases
2、解压之后,将allure/bin目录添加到环境变量path中
Windows系统添加环境变量如下图所示:
Mac系统添加环境变量如下图所示:
- 找到下载的allure下的bin目录,默认在下载目录下
- 进入terminal后,输入命令:sudo vi /etc/profile,如果没有权限请先执行 sudo chmod 777 /etc/profile
- 按i键进行编辑添加:
export ALLURE=/Users/XXX/Downloads/allure-2.11.0/bin
export PATH=$PATH:$ALLURE
- 添加效果如下图所示:
- 添加完成后按ESC键并输入: wq! 保存退出,输入source /etc/profile
- 查看allure是否配置成功:终端输入allure --version,出现版本号证明配置成功
mac电脑配置allure时会出现以下问题:
- 问题1:allure --version报错bash: /Users/wuxueqing/allure-2.11.0/bin/allure: Permission denied
此问题提示的权限不足,需进入allure目录/Users/XXX/Downloads/allure-2.11.0/bin给allure文件添加权限,命令:chmod 777 文件名称 - 问题2:使用allure生成报告时报错bash: /Users/wuxueqing/allure-2.11.0/bin/allure: No such file or directory
此问题是默认的环境变量错误导致,可能配置的allure环境变量未生效,重启电脑(reboot),OK!
生成测试结果
以下操作在pycharm软件中进行
在terminal里输入命令:pytest 测试文件 -sv --alluredir ./reports/report
去生成测试结果,如下图所示,会重新生成一个reports目录来存放这些结果(json文件)
同时terminal里也会将执行结果输出展示:
测试结果转换成可视化测试报告
使用命令:allure generate ./reports/report/ -o ./reports/test --clean
在terminal里输入该命令,命令执行成功后会生成test目录,如下图所示:
浏览器查看测试报告
点击test目录下的index.html文件并使用浏览器打开,效果图如下所示:
左边菜单栏中有很多选项,都是对测试case执行结果分析的不同形式的展示与说明。