Pytest测试框架(三)---测试报告生成

目录

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. 示例报文:
  2. 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的测试报告文件;打开结果:

  3. 9.3、在pytest.ini中使用 

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

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

 9.4、窗口执行

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

10、Allure测试报

10.1、环境准备

10.1.1、安装allure-pytest插件

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

10.1.2、安装Allure

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

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

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格式的测试报告)

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

执行命令:allure generate --clean report

执行结果;

7、生成文件:

 

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

10.2.1、Overview

 

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

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

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

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

10.2.2、Categories菜单

1、 显示断言失败的信息

 10.2.3、Suites菜单

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

10.2.4、graphs菜单

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

 

 10.2.5、Timeline菜单

1、  显示执行时间

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

 

 

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是小趴菜A

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值