Allure+pytest 生成测试报告

Posted shenh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Allure+pytest 生成测试报告相关的知识,希望对你有一定的参考价值。

简介:

  python 主流自动化测试报告插件有三个:htmlTestRunner、BeautifulReport 和 Allure。HTMLTestRunner是一个比较古老的报告模板,界面也不是很好看。BeautifulReport  界面很简洁,看起来也很直观,是一款比较不错的报告插件。如果你想提升一下你的level,让你的自动化测试报告变得高大上,那么请选择 Allure 。

  Allure 是一款轻量级的开源自动化测试报告生成框架。它支持绝大部分测试框架,比如 TestNG、Junit 、pytest、unittest 等。本文主要介绍 pytest 框架结合 Allure 生成 格式统一、美观的 测试报告。

 

 

1.Allure 下载安装

Allure 下载最新版本:https://github.com/allure-framework/allure2/releases

下载完成之后,解压到 pytest 目录中。然后设置环境变量,简单一点就是进入 allure-2.13.0in 目录执行 allure.bat 。cmd 输入 allure 查看环境变量是否设置成功。

技术图片

 

 

2. allure-pytest

下载 allure-pytest 插件,用来生成 Allure 测试报告所需要的数据。

pip3 install allure-pytest

 

案例分析:

1.编写一段使用 pytest 框架的测试代码:

#!/usr/bin/env python
# coding=utf-8
import pytest
import allure
import os

@pytest.fixture(scope=function)
def login():
    print("登录")
    yield
    print("登录完成")

@allure.feature(加入购物车)
def test_1(login):
    ‘‘‘将苹果加入购物车‘‘‘
    print("测试用例1")

@allure.feature(加入购物车)
def test_2():
    ‘‘‘将橘子加入购物车‘‘‘
    print("测试用例2")

if __name__ =="__main__":
    # 执行pytest单元测试,生成 Allure 报告需要的数据存在 /temp 目录
    pytest.main([--alluredir, ./temp])
    # 执行命令 allure generate ./temp -o ./report --clean ,生成测试报告
    os.system(allure generate ./temp -o ./report --clean

@allure 装饰器中的一些功能点:

@allure.feature :用于定义被测试的功能,被测产品的需求点
@allure.story : 用于定义被测功能的用户场景,即子功能点
@allure.step :用于将一个测试用例,分成几个步骤在报告中输出
allure.attach : 用于向测试报告中输入一些附加的信息,通常是一些测试数据信息

 

2.执行后生成 Allure 报告:

技术图片

 

打开 index.html ,测试报告如下:

技术图片

 

以上是关于Allure+pytest 生成测试报告的主要内容,如果未能解决你的问题,请参考以下文章

Pytest集成Allure生成测试报告

Allure+pytest 生成测试报告

Pytest+Allure生成自动化测试报告

pytest系列- pytest+allure+jenkins - 持续集成平台生成allure报告

pytest问题解决遇到pytest 执行不了allure,生成不了allure测试报告怎么办?

pytest 结合allure生成测试报告