目录

9、测试报告

9.1、安装pytest-html

 9.2、在main方法中使用

9.3、在pytest.ini中使用 

 9.4、窗口执行

10、Allure测试报

10.1、环境准备

10.1.1、安装allure-pytest插件

10.1.2、安装Allure

10.1.3、执行测试用例

10.1.4、定值化报告

10.2、报告结构,浏览器打开html文件(有很多区域查看)

10.2.1、Overview:

10.2.2、Categories菜单

 10.2.3、Suites菜单

10.2.4、graphs菜单

 10.2.5、Timeline菜单

10.2.6、Behaviors\Packages这两个菜单和Suites类似;


9、测试报告

9.1、安装pytest-html

  1. 安装插件 pytest-html
  2. 打开终端:输入:pip3 install pytest-htm

 9.2、在main方法中使用

  1. 示例报文:
import pytest


class Test_1():

    @pytest.mark.L1
    def test_02(self):
        print('测试用例: 1')
        assert '1' == '1'

class Test_2():

    @pytest.mark.L2
    def test_02(self):
        print('测试用例: 1')
        assert '1' == '2'  # 断言失败

if __name__ == '__main__':
    pytest.main(["-s", "./test_03.py", "--html=./report.html"])

执行结果,在当前目录生成一个report.html的测试报告文件;打开结果:

9.3、在pytest.ini中使用 

 1、在pytest.ini文件中添加参数

pytest生成allure报告 pytest 报告_pytest生成allure报告

2、测试文件中main方法里的--html参数删掉,一样可以生成report.html测试报告

pytest生成allure报告 pytest 报告_用例_02

 9.4、窗口执行

1、窗口输入pytest命令行执行效果一样;

10、Allure测试报

10.1、环境准备

10.1.1、安装allure-pytest插件

1、打开终端,输入命令行:pip3 install allure-pytest;(通过其他方法安装也行)

pytest生成allure报告 pytest 报告_pytest_03

10.1.2、安装Allure

1、要先安装Java并配置好了环境变量(这里就不过多说明了,之前文档里有介绍);

pytest生成allure报告 pytest 报告_测试用例_04

2、使用Homebrew安装:输入命令行:brew install allure(这里就不过多说明了,之前文档里有介绍);

3、查看安装目录:输入命令行:which allure

4、添加环境变量:输入命令行:“cd ~ ”,“open -e .bash_profile”(打开编辑文件),往里添加环境变量(export PATH=安装目录:$PATH)

5、输入“allure”验证是否配置完成:

10.1.3、执行测试用例

1、使用如下命令:

pytest.main([“-m”,”login”,”-s”,”-q”,”--alluredir==./report”])

      -m  标记用例;

login 被标记要执行的用例;

      -s  准许终端在测试执行时输出某些结果;

      -q  简化输出结果;

       --alluredir  生成Allure指定语法;

       ./report  生成报告的目录;

       --clear-alluredir  因为这个插件库allure-pytest生成了报告文件,第二次执行时不会清掉里面的东西,所以要删除report文件夹,然后重建;

10.1.4、定值化报告

1、标记

  feature  标注主要功能模块

  story   标注feature功能模块下的分支功能

  severity   标注测试用例的重要级别

  blocker级别   致命缺陷

  critical级别    严重缺陷

  normal级别    一般缺陷,默认这个缺陷

  minor级别    次要缺陷

  trivial级别    轻微缺陷

Step   标注测试用例的重要步骤

Attach 用于向测试报告中输入一些附件信息,通常是一些测试数据信息;  

Name  是附件名称,body是数据,attachment_type是传类型;附件支持的类型有TEXT、HTML、XML、PNG、JPG、JSON、OTHER

Issure   这里传的是一个连接,记录的是你的问题

Testcase    这里传的是一个连接,记录的是你的用例

Descriptiop  描述用例信息

2、示例用例,创建一个目录demo4,然后在下面创建一个目录report,两个测试文件,test_01.py、test_02.py

pytest生成allure报告 pytest 报告_pytest生成allure报告_05

3、est_01.py,代码示例:

import pytest, allure

@allure.feature("测试场景1")   # 标记场景
class Test_01():
    @allure.story("测试用例1-1")  # 标记测试用例
    @allure.severity("测试用例等级1")  # 标记用例等级
    def test_01(self):
        a = 1+1
        print("a")
        assert a == 2

 4、test_02.py,代码示例:

import pytest, allure

@allure.feature("测试场景2")   # 标记场景
class Test_01():
    @allure.story("测试用例2-1")  # 标记测试用例
    @allure.severity("测试用例等级2")  # 标记用例等级
    def test_02_1(self):
        """
        用例描述:第一条用例描述
        """
        #allure.MASTER_HELPER.description("222222222")
        a = 2+2
        print("a")
        assert a == 5  # 断言失败

    @allure.story("测试用例2-1")
    @allure.severity("测试用例等级3")
    @allure.step("用例2,重要步骤")
    def test_02_2(self):
        print("6")
        assert 6==6

if __name__ == '__main__':
    pytest.main(["-s", "-q", "--alluredir", "./report"])

5、使用main方法执行:(生成JSON格式的测试报告)

pytest生成allure报告 pytest 报告_pytest生成allure报告_06

 6、通过终端执行:进入demo4目录;

执行命令:allure generate --clean report

执行结果;

pytest生成allure报告 pytest 报告_pytest_07

7、生成文件:

 

10.2、报告结构,浏览器打开html文件(有很多区域查看)

10.2.1、Overview:

 

区域1:   显示报告生成时间,执行时间,一共执行了多少用例,环状图显示用例通过比例;

区域2:   显示的测试集合(class)的情况;

区域3:   显示的是测试场景(@allure.feature);

区域4、显示失败用例的信息;

10.2.2、Categories菜单

1、 显示断言失败的信息

pytest生成allure报告 pytest 报告_html_08

 10.2.3、Suites菜单

1、 以测试集合树的形式查看用例执行结果:

pytest生成allure报告 pytest 报告_用例_09

10.2.4、graphs菜单

1、显示用例执行状态的环状图、用例级别的柱状图、用例执行时间的柱状图;

 

 10.2.5、Timeline菜单

1、  显示执行时间

10.2.6、Behaviors\Packages这两个菜单和Suites类似;