首页 > 其他分享 >Allure常用功能汇总

Allure常用功能汇总

时间:2023-04-08 22:26:33浏览次数:33  
标签:常用 allure -- 汇总 Allure link report 测试用例 链接

allure标签

使用方法

参数值

参数说明

@allure.epic()

epic描述

敏捷里面的概念,定义史诗,往下是feature

@allure.feature()

模块名称

功能点的描述,往下是story

@allure.story()

用户故事

用户故事,往下是title

@allure.title(用例的标题)

用例的标题

重命名html报告名称

@allure.testcase()

测试用例的链接地址

对应功能测试用例系统里面的case

@allure.issue()

缺陷

对应缺陷管理系统里面的链接

@allure.description()

用例描述

测试用例的描述

@allure.step()

操作步骤

测试用例的步骤

@allure.severity()

用例等级

blocker,critical,normal,minor,trivial

@allure.link()

链接

定义一个链接,在测试报告展现

@allure.attachment()

附件

报告添加附件

 

allure用例等级

  • blocker  阻塞缺陷(功能未实现,无法下一步)
  • critical  严重缺陷(功能点缺失)
  • normal   一般缺陷(边界情况,格式错误)
  • minor  次要缺陷(界面错误与ui需求不符)
  • trivial   轻微缺陷(必须项无提示,或者提示不规范)

功能实现:只需要在用例方法上面添加@allure.severity装饰器即可

@allure.severity("normal")  # 默认是normal级别的用例

allure命令行参数allure-severities

pytest -h可以查看到allure相关的几个命令行参数

 --allure-severities=SEVERITIES_SET
                        Comma-separated list of severity names.
                        Tests only with these severities will be run.
                        Possible values are: blocker, critical, normal, minor, trivial.

如果有很多测试用例,现在只想做个快速的回归测试,只测试用例级别为blocker和critical级别的测试用例

pytest --alluredir ./report/allure --allure-severities blocker,critical

写法二:

pytest --alluredir=./report/allure --allure-severities=blocker,critical

如果只执行blocker级别的用例

pytest --alluredir=./report/allure --allure-severities=blocker

allure链接地址

  • @allure.link() 访问链接
  • @allure.issue() Bug链接
  • @allure.testcase() 测试用例链接

首先看一下三个装饰器的源码

def link(url, link_type=LinkType.LINK, name=None):
    return safely(plugin_manager.hook.decorate_as_link(url=url, link_type=link_type, name=name))


def issue(url, name=None):
    return link(url, link_type=LinkType.ISSUE, name=name)


def testcase(url, name=None):
    return link(url, link_type=LinkType.TEST_CASE, name=name)

知识点:

  • issue()和testcase()其实调用的也是link(),只是link_type不一样
  • 必传参数 url:跳转的链接
  • 可选参数 name:显示在allure报告的名字,如果不传就是显示完整的链接;建议传!!不然可读性不高
  • 可以理解成:三个方法是一样的,我们都提供跳转链接和名字,只是链接的type不一样,最终显示出来的样式不一样而已【type不一样,样式不一样】
  • 如果你喜欢,只用@allure.link()也可以
  • 而出现三个装饰器的原因是为了更好地将链接分类【访问连接、Bug链接、测试用例链接】

总结

  • 为了减少程序的阅读复杂性,其实可以统一用@allure.link()
  • 传name,写好链接描述,就知道这个链接是干嘛的啦,反正三个装饰器的作用都是一样的,就是样式略微不同…..

标记装饰器

提供了三个装饰器

  • @allure.epic:敏捷里面的概念,定义史诗,往下是 feature
  • @allure.feature:功能点的描述,理解成模块往下是 story
  • @allure.story:故事,往下是 title

用命令行的方式执行

  • –allure-epics
  • –allure-features
  • –allure-stories
# 只运行 epic 名为 test 的测试用例
pytest --alluredir ./report/allure --allure-epics=test

# 只运行 feature 名为 模块 的测试用例
pytest --alluredir ./report/allure --allure-features=模块

# 只运行 story1、story2 的测试用例(也可以不用=号 空格就行了哦)
pytest tests.py --allure-stories story1,story2

# 指定 feature+story
pytest tests.py --allure-features feature2 --allure-stories story2

allure添加环境变量

在 allure 报告首页 ENVIRONMENT 显示 ‘There are no environment variables’ 没有环境变量的配置信息。 环境变量配置可以添加报告相关的配置参数,如运行的系统环境,版本号,测试环境,测试人员等基本信息

添加environment配置文件

方法一:environment.properties 文件

在项目根目录添加environment.properties,文件里配置如下信息:

systemVersion=mac11.1
pythonVersion=3.7.6
allureVersion=2.13.8
baseUrl=http://192.168.1.xxx:8000
projectName=testName
author=jkc

方法二: environment.xml 文件

 
<environment>
    <parameter>
        <key>Browser</key>
        <value>Chrome</value>
    </parameter>
    <parameter>
        <key>Browser.Version</key>
        <value>50.0</value>
    </parameter>
    <parameter>
        <key>Stand</key>
        <value>Production</value>
    </parameter>
</environment>

展示报告

在运行 pytest 生成 allure 报告的时候,有时候需要加 --clean 参数,清楚之前的报告记录,这样会之前清空 report 目录,environment.properties文件也会被删除。 为了不让 environment.properties 文件删除掉,可以把 environment.properties 文件放项目根目录,在运行报告的时候,先 copy 到 report 目录

> pytest --alluredir ./report --clean-alluredir
> cp environment.properties ./report/environment.properties
> allure serve ./report

 使用

配置pytest.ini

addopts = -vs --alluredir ./report  # 项目的根目录下

运行项目产生报告

打开报告

使用serve

方法一:直接在pycharm下用terminal打开

allure serve ./report

方法二:在终端命令行打开

allure serve ./项目的全路径/report

使用generated生产allure-report报告文件夹,报告是html格式,可使用邮件浏览器直接访问

alluer generated report
# 重命名报告文件夹
allure geerated report -o allure_report

也可以使用open查看报告

allure open allure-report

 

标签:常用,allure,--,汇总,Allure,link,report,测试用例,链接
From: https://www.cnblogs.com/shukeshu/p/17299258.html

相关文章

  • GVIM常用命令
    命令模式:普通模式Esc:插入:insert到第100行:100找abc字符:/abc在0-100行找abc字符:0,100/abc用,对齐  :0,100Align,将0-100行的a替换为b替换:0,100s/a/b/g将a替换为b替换:s/a/b/g块操作ctrl+v块移动,shift+>复制,滚轮中间点一下。......
  • Python ORM Pony MySQL数据库 常用操作
    Pony是一个高级的对象关系映射器ORM框架。Pony它能够使用Python生成器表达式和lambdas向数据库编写查询。Pony分析表达式的抽象语法树,并将其转换为SQL查询。支持SQLite,MySQL,PostgreSQL和Oracle等数据库,本文主要介绍PythonORMPony中MySQL数据库常用操作,及数据增加、删除、修......
  • 浏览器常用操作命令
    一、浏览器操作命令启动火狐浏览器(49版本以下)System.setProperty("webdriver.firefox.bin","D:\\Firefox\\firefox.exe");WebDriverdriver=newFirefoxDriver();(谷歌和IE通过浏览器驱动启动浏览器)启动谷歌浏览器System.setProperty("webdriver.chrome.driver","E:\\c......
  • 浅谈top与free汇总
    top命令:如下图top-21:17:18表示当前时间;up323days,9:42表示上电到现在的时长;3users表示当前登录的用户个数;loadaverage:26.08,26.98,28.61表示1分钟,5分钟,15分钟CPU的负载均衡Tasks:670total表示操作系统总共运行了多少个任务;1running表示正在执行的任务个数;669slee......
  • Lunix常用命令
    ll查看当前目录下的所有文件pwd查看当前位置cd进入某个文件夹wget是Linux系统用于从Web下载文件的命令行工具,支持HTTP、HTTPS及FTP协议下载文件tar压缩加压命令tarxvf解压某个压缩包su切换管理员whereis  which查找文件或文件夹rm删除文件命令./config--p......
  • IDEA-常用设置及好用插件记录
    1、常用设置设置开启选择工作空间 设置工作空间编码集    2、好用插件......
  • 盒子模型常用属性
    盒⼦的位置和⼤⼩尺寸宽度width:⻓度|百分⽐|auto⾼度height边界marginpadding上右下左|上下左右padding与marginpadding:10px10px10px10px//上左下右padding:5px10px //上下边距5px、左右边距10pxpadding:5px10px20px//上边距左右边距下边距p......
  • win10慢的解决方法汇总
    1.打开Win10注册表之后,依次展开【HKEY_LOCAL_MACHINE】→【SYSTEM】→【CurrentControlSet】→【Services】→【TimeBroker】,然后在右侧找到start,将其值从3改为4,如下图所示。修改这一值会影响到Cortana的性能,它是导致CPU超高占用的可能原因之一。如果你不使用Cortana的话,可以参考......
  • 2023.04.07 - 前端常用解决跨域问题的方案
    JSONP:JSONP(JSONwithPadding)是一种前端跨域请求的方式,它利用了HTML中的<script>标签没有跨域限制的特点,通过动态创建<script>标签,构造一个特殊的URL,让服务端返回一段指定的JavaScript代码,然后在本地执行这段代码以达到跨域请求数据的目的。JSONP具有兼容性好、简单易......
  • 0002 嵌入式开发带你从小白到大佬系列之——Linux文件系统、常用文件操作命令(一)及用户
    1、熟悉Linux的文件系统结构Linux的文件系统结构其实是一个树形的分层组织结构,如下图:Linux系统目录结构及目录路径:1.1、文件系统层次结构标准Linux是开源的操作系统,各个Linux发行机构都可以按照自己的需求对Linux系统的文件系统进行相应的裁剪,所以各个Linux发行版本的目录结......