pytest教程-10-allue2生成html报告

领取资料,咨询答疑,请➕wei:  June__Go

上一小节我们学习了pytest-html生成html报告的方法,本小节我们讲解一下使用allue2生成html报告。

自动化测试执行完成后我们需要展示给其他人看,这就要有自动化测试报告了。复杂的测试报告当然可以自己代码实现,但用pytest-html或allure基本也能满足我们生成测试报告的要求了。本小节介绍allure2的使用。

allure是一款开源的,专门用来展示测试结果的一个工具,它可以与很多的测试框架做集成,比如java的Junit、TestNG,python的pytest等。allure会将测试用例的执行数据保存到xml文件中去,再利用allure的命令行将文件转换成HTML形式呈现出来。

安装allure

1、allure包下载:Central Repository: io/qameta/allure/allure-commandline

2、解压 -> 进入bin目录 -> 运行allure.bat

3、把bin目录加入PATH环境变量

4、检查allure是否安装成功 ,cmd中执行如下命令 allure

上图中表示java没有安装,因为allure工具是java开发的,需提前安装java环境。

jdk下载地址:Java Downloads | Oracle

安装jdk

配置java环境变量

在系统变量下面找到新建,填写变量名:JAVA_HOME,变量值:C:\Program Files\Java\jdk1.8.0_152(即Jdk的安装路径)

编辑Path变量选中系统变量中的Path变量,点击编辑--新建--输入%JAVA_HOME%\bin(建议直接复制粘贴,以免出错)--确定--确定--确定

%JAVA_HOME%\bin

验证JDK是否配置成功,cmd执行命令 java

上图代表java已安装成功。cmd中执行再次如下命令 allure

上图代表allure工具已经安装成功了!

安装 allure-pytest插件

pip install allure-pytest

成功安装

生成Allure报告

先准备一个简单的执行脚本

import pytest


def fun(x):
    return x + 1


def test_answer_1():
    """测试断言一"""
    assert fun(3) == 4


def test_answer_2():
    """测试断言二"""
    assert fun(5) == 7


@pytest.mark.parametrize("test_input,expected", [
    ("3+5", 8),
    ("2+4", 6),
    pytest.param("6 * 9", 42, marks=pytest.mark.xfail),
    pytest.param("6 * 6", 42, marks=pytest.mark.skip)
])
def test_mark(test_input, expected):
    """用例集合"""
    assert eval(test_input) == expected

运行命令:

pytest [测试文件] -s -q --alluredir=./result #--alluredir用于指定存储测试结果的路径)
示例:pytest test_demo.py -s -q --alluredir=./result

在当前result目录下生成报告结果文件

查看测试报告

方式一:直接打开默认浏览器展示报告

终端执行:allure serve ./result/

自动弹出html报告

方式二:从结果生成报告

生成报告数据:pytest test_demo.py -s -q --alluredir=./result

生成报告allure generate ./result/ -o ./report/ --clean (覆盖路径加--clean)

打开报告allure open -h 127.0.0.1 -p 8883 ./report/

allure报告定制

定制报告的内容非常丰富,后面会在单独的allure报告合集中详细介绍,各位尽请期待!

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走,希望可以帮助到大家!领取资料,咨询答疑,请➕wei:  June__Go

  • 12
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值