pytest与allure结合生成测试报告(mac系统)

时间:2021-03-02 10:26:47   收藏:0   阅读:87

  前面我们介绍过通过pytest-html插件来生成测试报告,pytest-html生成的测试报告不够美观,逼格也不够高,通过allure生成的测试报告是比较美观的,花里胡哨的,能够提升一个level。

allure官网:https://docs.qameta.io/allure/

allure命令行工具安装:

  按照官方文档上的提示来进行allure命令行工具的安装:

技术分享图片

技术分享图片

技术分享图片

技术分享图片

按照上面的步骤安装好allure-commandline工具。注意下载zip包的链接在官网中是http协议的,点击会报错,我们将协议改成http改成https访问链接就可以了。

allure添加到环境变量中:

技术分享图片

PATH="/usr/local/allure-2.9.0/bin:$PATH"
export PATH

技术分享图片

 

技术分享图片

  注意:执行allure命令时,需要jdk的支持,因此使用allure的前提是系统中安装了jdk并且配置了环境变量,jdk的安装以及环境变量配置在此不再赘述了。

下载安装allure-pytest插件:

  命令行下输入命令进行安装:

pip install allure-pytest

上面的命令执行后会安装allure-pytest 和 allure-python-commons 包,这两个包用来生成allure所需要的测试报告数据。

allure应用举个栗子:

# file_name: test_allure.py


import pytest
import allure


@pytest.fixture(scope="function")
def login():
    print("执行登录逻辑")
    yield
    print("执行退出登录逻辑")


@allure.feature("加入购物车")
def test_01(login):
    """
    先登录,再进行其他操作
    :param login:
    :return:
    """
    print("测试用例01正在执行")


@allure.feature("加入购物车")
def test_02():
    """
    不需要登录,直接操作
    :return:
    """
    print("测试用例02正在执行")


if __name__ == __main__:
    pytest.main([-s, test_allure.py])

运行用例,进入到test_allure.py所在目录,执行命令:

pytest --alluredir=./report/result    # --alluredir表示指定测试报告数据的生成路径

执行完成上述命令后,会在当前目录下,report目录下生成一个result目录文件,result下只是一些测试报告的原始数据,还不能作为html报告打开。

技术分享图片

  在线查看测试报告还需要执行下面的命令:

allure serve ./report/result

上面的命令会启动一个allure服务并自动分配端口,然后使用默认浏览器自动打开index.html,查看测试报告:

技术分享图片

  查看测试报告:

技术分享图片

  至此,我们就可以使用pytest结合allure生成更加美观的测试报告了。

原文:https://www.cnblogs.com/lwjnicole/p/14466997.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!