首页 > 其他分享 >软件测试/测试开发/全日制|Pytest 结合allure生成优美的测试报告

软件测试/测试开发/全日制|Pytest 结合allure生成优美的测试报告

时间:2024-01-22 19:01:19浏览次数:30  
标签:allure 测试报告 results 生成 pytest test 软件测试

软件测试/测试开发/全日制|Pytest 结合allure生成优美的测试报告_默认浏览器

前言

上一篇文章我们介绍了如何配置allure环境用来生成精美的测试报告,本文我们就来详细介绍一下pytest结合allure生成优美的测试报告。

环境准备

我们已经配置好了allure环境,下面我们需要安装生成allure报告的第三方库,allure-pytest,安装命令如下:

pip install allure-pytest

基本使用命令

在执行测试用例的时候监听并收集测试结果,直接在执行命令后加一个–alluredir=存放测试结果的路径”的参数即可,例如:

pytest --alluredir = /tmp/results
#/tmp/results即你要存放测试结果的路径

当测试用例执行完毕,测试结果已经收集完毕,这时就可以启动服务来生成测试报告了,命令执行成功后会在默认浏览器中打开测试报告,命令如下:

allure serve /tmp/results
#/tmp/results即上一步存放的测试结果的路径

生成示例

我们这里使用allure官方给的一个示例来生成测试报告,代码如下:

import pytest

def test_success():
    """this test succeeds"""
    assert True


def test_failure():
    """this test fails"""
    assert False


def test_skip():
    """this test is skipped"""
    pytest.skip('for a reason!')


def test_broken():
    raise Exception('oops')

执行下面的命令来运行测试,命令如下:

pytest test_demo.py --alluredir=results

--------------------
运行结果如下:
collected 4 items                                                                                                                                                  

test_demo.py .FsF                                                                                                                                            [100%]

============================================================================ FAILURES ============================================================================= 
__________________________________________________________________________ test_failure ___________________________________________________________________________ 

    def test_failure():
        """this test fails"""
>       assert False
E       assert False

test_demo.py:15: AssertionError
___________________________________________________________________________ test_broken ___________________________________________________________________________ 

    def test_broken():
>       raise Exception('oops')
E       Exception: oops

test_demo.py:24: Exception
===================================================================== short test summary info ===================================================================== 
FAILED test_demo.py::test_failure - assert False
FAILED test_demo.py::test_broken - Exception: oops
============================================================= 2 failed, 1 passed, 1 skipped in 0.05s ==============================================================

运行之后,我们就可以看到results文件夹下生成了几个.json文件,如下图:

软件测试/测试开发/全日制|Pytest 结合allure生成优美的测试报告_默认浏览器_02

生成了上述的json文件之后,我们就可以运行生成网页报告的命令,命令如下:

allure serve ./results

运行命令之后,会自动打开默认浏览器展示报告,如下图:

软件测试/测试开发/全日制|Pytest 结合allure生成优美的测试报告_默认浏览器_03

可以看到,一共四个测试用例,一个成功,一个跳过,一个失败,一个有异常,这四种状态在测试报告中都有对应的标识,并且我们还可以查看测试用例的详细信息、执行时间、日志等。

总结

通过结合Pytest和Allure,我们可以轻松地生成漂亮、交互式的测试报告,方便团队进行测试结果的分析和监控。Allure的图形界面提供了丰富的信息,使得测试结果更易于理解。这种结合的方式有助于提高测试过程的透明度和效率,从而提升整体的软件质量。希望本文能帮到大家!

标签:allure,测试报告,results,生成,pytest,test,软件测试
From: https://blog.51cto.com/u_15640304/9369341

相关文章

  • 软件测试基础知识 - 集成测试和系统测试的区别,以及它们的应用场景
    区别1、测试计划和测试用例编制的先后顺序:从V模型来讲,在需求阶段就要制定系统测试计划和测试用例,概要设计的时候做集成测试计划和测试用例,有些公司的具体实践不一样,但是顺序肯定是先做系统测试计划和测试用例,再做集成测试计划和测试用例。2、测试用例的粒度:系统测试用例相对很接......
  • 软件测试基础知识 + 面试理论(超详细)
     一、什么是软件?软件是计算机系统中的程序和相关文件或文档的总称。二、什么是软件测试?说法一:使用人工或自动的手段来运行或测量软件系统的过程,以检验软件系统是否满足规定的要求,并找出与预期结果之间的差异。说法二:软件测试就是利用一定的方法对软件的质量或者使用性进行......
  • 在职阿里6年,一个29岁女软件测试工程师的心声
    简单的先说一下,坐标杭州,14届本科毕业,算上年前在阿里巴巴的面试,一共有面试了有6家公司(因为不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少)其中成功的有4家,另外2家失败的原因在于:1.对于系统知识的了解不够全面,在最后一轮主管面试的时候,主管问得比较细,最后由于不......
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
    8年软件测试工程师感悟——写给还在迷茫中的朋友这两天和朋友谈到软件测试的发展,其实软件测试已经在不知不觉中发生了非常大的改变,前几年的软件测试行业还是一个风口,随着不断地转行人员以及毕业的大学生疯狂地涌入软件测试行业,目前软件测试行业“缺口”已经基本饱和。当然,我说......
  • 分享一份适合练手的软件测试实战项目
    最近,不少读者托我找一个能实际练手的测试项目。开始,我觉得这是很简单的一件事,但当我付诸行动时,却发现,要找到一个对新手友好的练手项目,着实困难。我翻了不下一百个web网页,包括之前推荐练手的网站(普遍会有bug),但依旧没能找到合适的。最后,在我苦苦的搜寻过程中,突然蹦跶出来一条引......
  • 软件测试(测试用例)—写用例无压力
    软件测试——用例篇一、概念测试用例的基本概念:测试用例(TestCase)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。主要步骤:测试环境——测试步骤——测试数据——预期结果网易邮箱注册成功测试用例标题:邮箱注......
  • 软件测试必问必背面试题
    软件测试必问必背面试题 01软件测试理论部分1.1测试概念1.请你分别介绍一下单元测试、集成测试、系统测试、验收测试、回归测试单元测试:完成最小的软件设计单元(模块)的验证工作,目标是确保模块被正确的编码集成测试:通过测试发现与模块接口有关的问题系统测试:是基于系......
  • 【软件测试】Jmeter性能测试(性能测试,Jmeter使用与结果分析)
    【软件测试】Jmeter性能测试(性能测试,Jmeter使用与结果分析)前言性能测试是一个全栈工程师/架构师必会的技能之一,只有学会性能测试,才能根据得到的测试报告进行分析,找到系统性能的瓶颈所在,而这也是优化架构设计中重要的依据。本文简单讲述了性能测试以及性能测试工具Jmeter。另......
  • 软件测试停止标准
    ......
  • 软件测试指南
    ......