pytest测试完成后,可以通过三方库生成好看的测试报告。今天就来学习一款allure测试报告。
一、安装allure-pytest
1、下载,解压,配置path路径。
https://github.com/allure-framework/allure2/releases
将安装文件的bin目录安装到环境变量path里
D:\Program Files (x86)\allure-2.13.2\bin
验证是否安装成功:
allure --version
如果pycharm验证失败,重启pycharm即可。
2、配置里添加生成测试报告的地址
[pytest]
addopts = -vs --alluredir ./temp
testpaths = ./testcase
python_files = test_04.py
python_classes = Test*
python_functions = test
markers =
smoke:冒烟用例
usermanage:用户管理模块
www:测试
3、修改main函数
import os
import pytest
if __name__ == '__main__':
pytest.main()
os.system('allure generate ./temp -o ./report --clean')
4、直接执行main函数,生成报告
5、每次生成报告不替换之前的,修改main函数
import os
import time
import pytest
if __name__ == '__main__':
pytest.main()
# 添加时间
times = time.strftime("%Y_%m_%d_%H_%M_%S",time.localtime())
os.system('allure generate ./temp -o ./report/report_'+times+' --clean')
正在上传…重新上传取消
二、定制allure报告
修改allure配置。首先打开安装目录,我是安装在
D:\Program Files (x86)\allure-2.13.2
里面有4个目录:
bin:执行文件
config:配置文件
lib:jar包
plugins:插件
1、logo定制
a修改config/allure.yaml,加入自定义logo
- custom-logo-plugin
b修改的图片和样式
D:\Program Files (x86)\allure-2.13.2\plugins\custom-logo-plugin\static
/*
.side-nav__brand {
background: url('custom-logo.svg') no-repeat left center !important;
margin-left: 10px;
}
*/
.side-nav__brand {
background: url('qq.png') no-repeat left center !important;
margin-left: 10px;
height: 90px;
}
2、功能定制
在类上面添加项目名、模块名、标题
import allure
@allure.epic("项目1")
@allure.feature("模块1")
class Test04:
@allure.story("用例1")
@allure.title("成功的用例")
def test_01(self,wufantest):
print('测试百里守约'+wufantest)
@allure.story("用例1")
@allure.title("失败的用例")
def test_02(self):
print('测试娜可露露')
@allure.story("用例2")
@allure.title("失败的用例")
def test_03(self):
print('测试蔡文姬')
3、我们还可以通过以下标签来自定义用例的优先级
- BLOCKER:致命bug
- CRITICAL:严重bug
- NORMAL:一般
- MINOR:提示
- TRIVIAL:轻微bug
@allure.severity(allure.severity_level.BLOCKER)
def test_01(self,wufantest):
print('测试百里守约'+wufantest)
优先级展示如下图所示: