allure介绍——生成完美的测试报告
一、allure简介
Allure是输出网页测试报告的一种框架
1、该框架是基于Java写的,所以安装该框架需要先安装JDK;
2、下载allure命令行工具,路径:https://github.com/allure-framework/allure2/releases
注:①下载包放到pytest文件夹中,然后将allure/bin的路径放到环境变量的path中
②allure命令行工具,这个工具主要用来把测试用例的运行结果转换成html格式
3、安装pytest-allure插件,pip install pytest-allure
4、相关命令(有两种方式可生成报告)
第一种方式:
①执行case,并生成json格式报告
Pytest 文件名 –alluredir 生成报告的路径
如:pytest -s -v --alluredir report/allure test_Devicesettings.py::Test_factory::test_Factory --clean-alluredir
说明:-s -v是跑case时显示详细case数据信息和打印信息,你不需要查看,可以不加;
report/allure 这个就是存放生成报告的路径
--clean-alluredir是清空之前文件夹下面的报告
–alluredir=生成报告的路径 py文件名
test_Devicesettings.py::Test_factory::test_Factory 这个是指定运行的case;我这里是test_Devicesettings文件下的Test_factory类下的test_Factory方法
该条命令运行后,case将会正常执行,并将报告数据保存到指定路径下
②直接打开生成的json报告,命令如下:
allure serve 生成的json报告路径
如:allure serve ./report/allure
执行该命令后,等待即可,它会自动打开默认浏览器,自动展示网页版报告。
打开后的报告,如下:
第二种方式:
第一个步骤和方式1一样:
①执行case,并生成json报告,命令:
Pytest 文件名 –alluredir 生成报告的路径
如:pytest -s -v --alluredir report/allure test_Devicesettings.py::Test_factory::test_Factory --clean-alluredir
②将json格式转化为html格式
由于执行case后,生成的报告是json格式,不能直接打开,所以我们需要转化为html格式,网页才能打开;输入下面的命令:
Allure generate 生成json报告的路径 -o 生成html的路径
如:allure generate report/allure -o report/html --clean
其中的--clean是清除上次生成的报告数据
③打开html格式报告,执行命令:
allure open 生成html格式报告路径
如:allure open report/html
打开后的报告和方法1是一样的,如下图:
注:①在allure-report下index.html文件是不能直接打开的,出现页面都是loading的情况,这是因为直接allure报告用浏览器是打不开的,需要用allure命令渲染之后打开才能展示效果。
②allure使用了两种方式来渲染页面。分别是 allure open 和 allure serve。前者用于在本地渲染和查看结果,后者用于在本地渲染后对外展示结果。这里我们使用allure open。运行命令
参考:https://www.cnblogs.com/syy714363310/p/15149631.html
二、allure几个常用特性
1、allure.feature("xxxxxxxxxxxxxxx"):对大功能的描述
2、allure.discritption("xxxxxxxxxxxxxxxxxxxx"):对case的描述
3、allure.story(“xxxxxxxxxx”)
3、with allure.step(“xxxx”):可对每个步骤进行详细描述
如果要用到with allure.step(“xxxx”),必须要导入allure,import allure