当前位置: 首页 > article >正文

Allure入门介绍

        想象一下,你是一名忙碌的软件工程师,刚刚完成了一个重要项目的代码编写和测试工作。现在,你需要向整个团队展示测试结果,包括开发人员、产品经理、质量保证人员等。你手头上有一份普通的测试报告,里面满是密密麻麻的文字和数字,当你在会议室试图解释这些结果时,你看到了大家迷茫的眼神(=.=)。这种情况是不是很糟糕?其实,我们都渴望有一种更好的方式来呈现测试结果,让所有人都能轻松理解。这就是 Allure 诞生的意义,它是一款能够将测试数据转化为生动、直观的可视化报告的工具,就像为我们打开了一扇通往清晰测试洞察的大门。

我专门查了一下,这个东西的读音是:
英式读音 [əˈlʊə(r)],美式读音 [əˈlʊr]。读音的重音在第二个音节,“lure” 部分读音和英文单词 “lure”(诱惑、吸引力)相同。

        第一步:首先Allure基于Java生态,需要下载JDK并且正确配置环境变量。

        第二步:下载地址:去下载压缩包。

注意存放目录不要带中文:(我下载的是最新版本24年10月底的那个)Central Repository: io/qameta/allure/allure-commandline
注意这里点击去版本之后要选zip:

        第三步:解压zip并且配置环境变量:

打开到bin目录复制路径加入path环境变量:

验证一下: 
看看是不是跟下载的版本号一致,之后就可以了。

第四步:打开pycharm,新建一个项目,然后创建两个dir和一个.py文件:

输入以下四个cases:(记得提前下载pytest:   pip install pytest  )

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')

注意一点 :这里的.py文件一定要以test_开头或者_test结尾!否则识别不出来这个测试的cases!我当时就是没有加_直接弄到最后显示0test case什么都没有......

以上四个cases分别对应四个状态分别是:success/failure/skip/broken这都很好理解,注意的就是failure和broken的区别:

  • Failed(失败)
    • 当一个测试用例被标记为 “Failed” 时,这意味着测试中的某个断言(assert)没有通过。断言是测试用例中用于验证代码行为是否符合预期的关键部分。例如,在代码中使用assert a == b这样的布尔类型的语句,如果ab的值不相等,这个断言就会失败,导致整个测试用例被标记为 “Failed”。它表示测试的功能没有按照预期的逻辑正确执行,是一种对预期结果的否定验证。
  • Broken(损坏、出错)
    • 当测试用例被标记为 “Broken”,通常是因为在测试用例的执行过程中出现了意外的错误,比如代码中的语法错误、未捕获的异常或者外部依赖(如数据库连接、网络服务等)出现问题。这和 “Failed” 的区别在于,“Failed” 是预期的功能验证没有通过,而 “Broken” 是由于一些非预期的错误导致测试无法正常完成对功能的验证。例如,在测试用例中调用一个函数,而这个函数内部有一个未处理的除零错误,就会导致测试用例出现 “Broken” 状态。

第五步:执行测试cases

一定是先执行cases,再在终端执行:pytest --alluredir=allure-results,这个命令的作用是用于收集测试结果,通过--alluredir选项,将测试结果以特定的数据格式(通常是 JSON 等格式)保存到allure - results文件夹中(这个文件夹就是刚开始要建的)。一定要先跑用例不然没有数据可以收集!

再执行allure generate allure-results,这个命令的作用是将allure - results文件夹中的原始测试结果数据转换为可查看的测试报告格式。这个过程会自动创建一个allure-report的文件夹里面有一些更多的内容包含HTML、css样式以及一些JavaScript的代码,方便人阅读,也就解决了我们这个工具诞生的初心~

最后再执行allure open allure-report,就会自动打开一个web网页里面就是刚刚运行的四个cases的报告,简洁美观适合阅读:



​​下面这个是我的失败案例:

 原因就是.py文件的命名不正确导致没有case被录入分析......


        好了以上就是小玉今天的收获,那么关于web端的allure测试报告还有更多等着小玉去探索,那么接下来大家一起进步吧~~~


http://www.kler.cn/a/389135.html

相关文章:

  • LLMs 如何处理相互矛盾的指令?指令遵循优先级实验
  • 探索Pillow库:Python图像处理的瑞士军刀
  • JVM详解:JVM的系统架构
  • libcurl.net入门使用
  • idea 解决缓存损坏问题
  • springboot 之 整合springdoc2.6 (swagger 3)
  • qt实现多影像的匀光调整
  • 网络层5——IPV6
  • Oracle 第26章:Oracle Data Guard
  • MySQL 数据备份与恢复
  • 智能检测技术与传感器(热电传感器四个定律)
  • 状态模式(State Pattern)详解
  • 构造,CF 2029D - Cool Graph
  • HBase的架构介绍,安装及简单操作
  • Python数据分析案例64——杭帮菜美食探索数据分析可视化
  • GIF图片格式详解(三)
  • 如何在 Spring Boot 中利用 RocketMQ 实现批量消息消费
  • Spark本地模式安装
  • MYSQL中的两种转义操作
  • Linux_调试器-gdb/cgdb的使用
  • 境内部署DIfy(上篇)
  • 软件工程中的创建型设计模式:工厂方法模式与抽象工厂模式
  • Java抽象类与接口
  • openresty入门教程:init_by_lua_block
  • ctfshow web入门黑盒测试web380-384
  • 每周算法2:数学+模拟+哈希表+栈+线性dp+贪心(简单)