Allure+pytest生成测试报告
-
下载allure ,下载之后解压到本地
https://github.com/allure-framework/allure2/releases, -
配置环境变量 安装路径(解压之后文件存放路径)+bin
-
安装allure-pytest
pip install allure-pytest
- 使用时 import allure 运行时在pytest命令后面加上 --alluredir ./report/allure_raw 会自动在当前文件夹根目录生成report/allure_raw文件,里面是测试报告的JSON格式文件
import pytest
import allure
@pytest.mark.unit
@allure.feature("测试控制类")
class TestControl:
def test_Equal(self):
assert 2 == 2
def test_Equal(self):
assert True
@allure.story("错误测试")
def test_Equal(self):
print("测试用例3")
allure.attach("错误测试项")
assert 1 == 2
@allure.story("测试跳过项")
def test_skip(self):
"""this test is skipped"""
pytest.skip('for a reason!')
@allure.story("测试故障项")
def test_broken(self):
raise Exception('oops')
- 执行测试用例时使用方法如下,执行之后得到的是测试报告的JSON格式文件
pytest --alluredir ./report/allure_raw
- 得到测试报告的JSON格式文件之后有两种处理方式
#在当前文件夹根目录启动allure服务
#不生成本地html文件,生成成功会自动打开浏览器
allure serve report/allure_raw
#生成本地html报告,需手动打开index.html文件,如下图
allure generate ./report/allure_raw -o ./allure_reports/html/ --clean
成功生成结果如下
- 报告结果,一些具体内容这里不给出详细介绍,如有需要可自行百度搜索。
- 附
生成的html页面浏览器打开时会提示出现跨域无法访问的问题,火狐浏览器设置如下(谷歌不支持)
1.进入火狐配置页进行设置 ,地址栏输入"about:config"
2.点击”我了解此风险”后进入页面
3.搜索”security.fileuri.strict_origin_policy”,并设置该项为false
4.重启浏览器,可以跨域访问
- 到此使用allure生成一个美观的测试报告就介绍完毕了。