Pytest系列(19)- 我们需要掌握的allure特性

简介: Pytest系列(19)- 我们需要掌握的allure特性

如果你还想从头学起Pytest,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1690628.html

 

前言


前面我们介绍了allure的快速入门,只是单纯的敲allure命令而已

其实allure还有内置的特性可以让我们在pytest代码里面用起来,然后我们生成的报告更加直观、详细、贴合管理层的心意...

 

Environment


可以理解成环境变量参数,没有什么实际作用,个人觉得只是为了让别人知道本次测试的运行环境参数而已,显示啥都是自己定的

注意!!默认是没有的哦

image.png


如何添加Environment呢


通过创建environment.properties或者environment.xml文件,并把文件存放到allure-results(这个目录是生成最后的html报告之前,生成依赖文件的目录)目录下,就是 --alluredir 后面跟的目录

像我这里目录就是allure,所以放在allure下面 --alluredir allure

image.png


environment.properties

Browser=Chrome
Browser.Version=81.0.4044.92
Stand=Production
ApiUrl=127.0.0.1/login
python.Version=3.7.2


或者

environment.xml

<environment>
    <parameter>
        <key>Browser</key>
        <value>Chrome</value>
    </parameter>
    <parameter>
        <key>Browser.Version</key>
        <value>81.0.4044.92</value>
    </parameter>
    <parameter>
        <key>Stand</key>
        <value>Production</value>
    </parameter>
        <parameter>
        <key>ApiUrl</key>
        <value>127.0.0.1/login</value>
    </parameter>
        <parameter>
        <key>python.Version</key>
        <value>3.7.2</value>
    </parameter>
</environment>


注意!都不可以写中文哦!!!!亲测!!会乱码

 

运行之后,我们看看allure报告的environment

image.png


Categories


直译:分类

通俗理解:测试用例结果的分类

默认情况下,有两类缺陷:

  1. Product defects 产品缺陷(测试结果:failed)
  2. Test defects 测试缺陷(测试结果:error/broken)

我们是可以创建自定义缺陷分类的,将 categories.json 文件添加到allure-results目录即可(和上面environment.properties放同一个目录)

 

categories.json

[
  {
    "name": "Ignored tests", 
    "matchedStatuses": ["skipped"] 
  },
  {
    "name": "Infrastructure problems",
    "matchedStatuses": ["broken", "failed"],
    "messageRegex": ".*bye-bye.*" 
  },
  {
    "name": "Outdated tests",
    "matchedStatuses": ["broken"],
    "traceRegex": ".*FileNotFoundException.*" 
  },
  {
    "name": "Product defects",
    "matchedStatuses": ["failed"]
  },
  {
    "name": "Test defects",
    "matchedStatuses": ["broken"]
  }
]


讲下参数的含义

  • name:分类名称
  • matchedStatuses:测试用例的运行状态,默认["failed", "broken", "passed", "skipped", "unknown"]
  • messageRegex:测试用例运行的错误信息,默认是 .* ,是通过正则去匹配的哦!
  • traceRegex:测试用例运行的错误堆栈信息,默认是  .*  ,也是通过正则去匹配的哦!

注意

这里的name是可以写中文的哦!

 

Flaky test


用法:在类或者方法上直接加 @Flaky

官方也说了:可以将整个测试类标记为Flaky

 

那什么是Flaky呢?

  • 简单来说就是,不够稳定的测试用例集,有可能前阵子还运行成功,过阵子就运行失败,理解成“闪烁”
  • 标记成Flaky的好处就是:当用例失败的情况下,我们能获取足够详细的信息,毕竟有可能某些测试用例是非常重要的
  • 如果不标记为Flaky的话,可能就要禁用这些测试
相关文章
|
图形学
unity3d置灰image图片shader
新建材质球,赋值该shader,将材质球复制到image上即可置灰image Shader "UIEffect/ImageGray" { Properties { [PerRendererData] _MainTex("...
1682 0
|
9月前
|
人工智能 测试技术
LlamaV-o1:全能多模态视觉推理模型,推理得分超越其他开源模型,推理速度翻5倍
LlamaV-o1 是一款多模态视觉推理模型,通过逐步推理学习方法解决复杂任务,支持透明推理过程,适用于医疗、金融等领域。
215 16
LlamaV-o1:全能多模态视觉推理模型,推理得分超越其他开源模型,推理速度翻5倍
淘宝批量复制宝贝提示“当前类目大于48小时发货的发货时间不能大于15天,请调整”怎么解决?
要复制这个宝贝上传到淘宝店铺,只需要重新复制一次,然后在大淘营淘宝宝贝复制专家下载配置的第二步,选择一个小于或等于15天的发货时间(见下图),这样就可以复制宝贝上传到淘宝店铺了。
|
Web App开发 弹性计算 Kubernetes
云原生系列 【基于CCE Kubernetes编排实战】
## 基于CCE Kubernetes编排实战 #### 本实验用于指导学员基于CCE完成Kubernetes实验操作。主要包含Kubernetes控制器Deployment、DaemonSet编排操作。 操作前提:预置环境与登录华为云收起 ①预置环境 实验开始之前,为什么需要先预置实验环境? 注意:开始实验之前请点击手册上方"预置实验环境"按钮。 预置实验环境约等待【1分钟】后预置成功。环境预置成功会生成以分配的华为云账号命名的Vpc、安全组。 (2)登录华为云进入【实验操作桌面】,打开Chrome浏览器,首次可自动登录并进入华为云 控制台页面。 如后续关闭浏览器重新登陆或自动
452 1
|
Web App开发 前端开发 JavaScript
Node.js Web 框架再进化 - 面向前端与未来标准
Web 开发一直是 Node.js 的主流方向,无论新人必学的 Express / Koa,或者是社区流行的企业级框架 Egg / Nest,各类 Web 框架层出不穷。本次分享来自阿里巴巴前端技术专家刘子健(繁易)在第十六届D2前端技术论坛的分享,为大家带来 Node.js Web 框架的发展历程,分析各类框架的适用场景及利弊,并基于阿里的 Node.js 框架 Midway,为大家介绍在过去这两年,我们对下一代 Node.js Web 框架的思考、设计、实践,包含如何面向前端做一款前端“爱用”的 Node.js 框架,如何面向未来标准甚至参与标准来设计 Node.js Web 框架两部分。
629 1
Node.js Web 框架再进化 - 面向前端与未来标准
|
安全 JavaScript 小程序
云支付官方FAQ
云支付官方小二实时更新的浓缩FAQ,帮助广大服务商快速定位问题。
|
机器学习/深度学习 传感器 搜索推荐
【路径规划-多式联运】基于遗传算法求解多式联运运输问题(考虑碳交易)附Matlab代码
【路径规划-多式联运】基于遗传算法求解多式联运运输问题(考虑碳交易)附Matlab代码
|
自然语言处理 数据挖掘 PyTorch
huggingface.transformers速成笔记:Pipeline推理和AutoClass
本部分首先介绍如何使用pipeline()进行快速推理,然后介绍AutoClass:用AutoModel加载预训练模型、用tokenizer将文本转化为模型的数字输入、用AutoConfig来改变模型超参、用AutoFeatureExtractor加载预训练的feature extractor、用AutoProcessor加载预训练的processor。 本文将仅关注PyTorch语言,但对TensorFlow语言的适配在本部分文档也有描述。
huggingface.transformers速成笔记:Pipeline推理和AutoClass
|
数据可视化 计算机视觉
单组学的多变量分析|1.PCA和PLS-DA
单组学的多变量分析|1.PCA和PLS-DA
962 0
单组学的多变量分析|1.PCA和PLS-DA