自动化测试Allure报告使用详解

news2024/11/24 8:42:39

这一节主要是记录allure的内容以及用法,怎么让他生成一个完整的想要的报告。

allure生成的报告和其他五花八门的报告对比了一下,它的可读性是最好、最直观的。这不仅仅是我想要的效果,也是很多小伙伴想要的结果,毕竟这是给领导看,而且也算是自己老大成果的汇总。

一、Allure相关的内容:

Allure用例描述
使用方法参数值参数说明
@allure.epic()epic描述定义项目、当有多个项目是使用。往下是feature
@allure.feature()模块名称用例按照模块区分,有多个模块时给每个起名字  
@allure.story()用例名称一个用例的描述
@allure.title(用例的标题)用例标题一个用例标题
@allure.testcase()测试用例的连接地址自动化用例对应的功能用例存放系统的地址
@allure.issue()缺陷地址对应缺陷管理系统里边的缺陷地址
@allure.description()用例描述对测试用例的详细描述
@allure.step()操作步骤测试用例的操作步骤
@allure.severity()用例等级blocker  、critical  、normal  、minor  、trivial
@allure.link()定义连接用于定义一个需要在测试报告中展示的连接
@allure.attachment()附件添加测试报告附件

总共主要的就以上这些,常用的大概有一半吧 。

二、对于这其中常用的做一些使用实例:

代码结构:

登录是一个前置操作 ,拿出来后单独存放,loging.py文件内容:

# __*__coding:utf-8 __*__

import allure

@allure.step("操作步骤: 登录")
def longin():
    '''登录操作'''
    print("这个是登录的接口")

conftest.py这个文件主要放一些公共的内容

# __*__coding:utf-8 __*__

import pytest
from common_contion.loging import longin

@pytest.fixture(scope="session")
def login_fixture():
    longin()
    print("这个是前置操作:登录")

case----test_case.py文件主要存放一些测试用例,内容如下:

# __*__coding:utf-8 __*__

import pytest
import allure
from common_contion.dome_Interface import *


@allure.severity("blocker")
@allure.epic("项目名称: 会所资源管理系统")
@allure.issue("http://149.335.82.12:8080/zentao/bug-view-1.html")  # 禅道bug地址
@allure.testcase("http://149.335.82.12:8080/zentao/testcase-view-5-1.html")  # 禅道用例连接地址
@allure.feature("房间管理模块")
class Testdome1(object):
    def test_dome_1(self,login_fixture):
        '''用例一的用例描述: 我是第一个用例,我只有一个步骤'''
        print("第一个测试用例")
        jieko_dome_1()


    def test_dome_2(self,login_fixture):
        '''用例二的用例描述: 我是第二个用例,我只有一个步骤'''
        print("第二个测试用例")
        jieko_dome_2()


@allure.severity("critical")
@allure.epic("项目名称: 会所资源管理系统")
@allure.feature("资源管理模块")
@allure.story("用例的标题: 对会所资源进行增、删、改、查")
@allure.issue("http://149.335.82.12:8080/zentao/bug-view-1.html")  # 禅道bug地址
@allure.testcase("http://149.335.82.12:8080/zentao/testcase-view-5-1.html")  # 禅道用例连接地址
class Testdome3(object):
    def test_dome_3(self,login_fixture):
        '''用例三的用例描述: 我是第三个用例,我是有多个步骤;'''
        print("第三个测试用例")
        f = jieko_dome_3()
        f.jieko_dome_3_1()
        f.jieko_dome_3_2()
        f.jieko_dome_3_3()
        f.jieko_dome_3_4()

common_contion----dome_Interface.py文件主要存放用例相关的接口内容:

# __*__coding:utf-8 __*__

import allure

def jieko_dome_1():
    '''用例描述: 用例一的接口'''
    print("这个是第一个用例对应的接口")

def jieko_dome_2():
    '''用例描述: 用例二的接口'''
    print("这个是第二个用例对应的接口")


@allure.feature("资源管理模块")
class jieko_dome_3(object):
    '''这个是一个模块的测试'''
    @allure.step("操作步骤: 新增资源个人信息")
    def jieko_dome_3_1(self):
        '''用例描述: 用例三的新增内容接口'''
        print("这个是第三个用例对应的接口一")

    @allure.step("操作步骤: 查询资源在线信息")
    def jieko_dome_3_2(self):
        '''用例描述: 用例三的查询内容接口'''
        print("这个是第三个用例对应的接口二")

    @allure.step("操作步骤: 修改资源身份信息")
    def jieko_dome_3_3(self):
        '''用例描述: 用例三的编辑内容接口'''
        print("这个是第三个用例对应的接口三")

    @allure.step("操作步骤: 删除资源全部信息")
    def jieko_dome_3_4(self):
        '''用例描述: 用例三的删除内容接口'''
        print("这个是第三个用例对应的接口四")

三、执行测试用例:

命令行模式执行用例

1、pytest --alluredir ./reopore/allure_row_1

执行结果:

会在工程中生成一个 /reopore/allure_row_1的文件,如图:

2、dome>allure serve reopore/allure_row_1

执行命令后将收集的数据加载到allure报告中,执行结果:

会自动使用默认浏览器打开报告

报告样式展示如下:

以上就是allure的各种装饰器加载后展示的报告的样式了。

正在学习测试的小伙伴可以通过点击下面的小卡片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/751100.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue使用keep-alive设置哪些组件可以被缓存,哪些不被缓存

需求&#xff1a;当一个项目中&#xff0c;不是所有的组件页面都需要缓存起来&#xff0c;因为有些页面是不需要的 <keep-alive><router-view v-if"$route.meta.keepAlive"></router-view> </keep-alive><router-view v-if"!$rout…

27、简述线程池处理线程

简述线程池处理线程 线程池执行任务 判断核心线程是否已满&#xff0c;如果未满&#xff0c;则 创建核心线程执行&#xff0c;如果已满&#xff0c;则走下一步判断队列是否已满&#xff0c;如果未满&#xff0c;则 将任务放到队列中&#xff0c;如果已满 &#xff0c; 则走下一…

03关于golang中各种运算符的讲解代码和注释

运算符 算术运算符&#xff1a;关系运算符&#xff1a;逻辑运算符&#xff1a;赋值运算符&#xff1a;位运算符&#xff1a; 在Golang中&#xff0c;运算符是用于执行各种数学和逻辑操作的符号。本文将对Golang中常见的运算符进行讲解&#xff0c;并提供一些示例代码和注释。 …

ECharts笔记-------饼状图

这幅饼状图由title、legend、series和tooltip这四个组件组成&#xff0c;每个组件都有对应的属性来调节参数&#xff0c;下面是组件的具体内容。 title组件 title: {text: ECharts 饼状图 }, 这副图只用了title组件的text属性用来设置标题内容,title还有以下属性(部分)&…

辅助驾驶功能开发-功能规范篇(22)-4-L2级辅助驾驶方案功能规范

1.3.4 LDW系统功能定义 1.3.4.1 状态机 1.3.4.2 功能定义 1.3.4.2.1 信号需求列表 1.3.4.2.2 系统开启关闭 1&#xff09;初始化 车辆上电后&#xff0c;车道偏离预警系统&#xff08;LDW&#xff09;进行初始化&#xff0c;控制器需要在上电后 220ms 内发出第一帧报文&…

【力扣JavaScript】1047. 删除字符串中的所有相邻重复项

/*** param {string} s* return {string}*/ var removeDuplicates function(s) {let stack[];for(i of s){let prevstack.pop();if(prev!i){stack.push(prev);stack.push(i);}}return stack.join(); };

ORACLE实时SQL监控视图

引言 实时的SQL监控&#xff08;Real Time SQL Monitoring&#xff09;是Oracle 11g的一个新特性&#xff0c;它是一项强大的工具&#xff0c;用于监视和分析正在执行的SQL语句的性能和执行计划。该功能允许我们实时地跟踪SQL查询的执行过程&#xff0c;以及了解其资源消耗、等…

conda疑难杂症

annaconda、miniconda和conda的关系 conda官网 https://docs.conda.io/projects/conda/en/latest/ 下载安装Anaconda: https://www.anaconda.com/products/distribution#Downloads 下载安装Miniconda&#xff1a;https://docs.conda.io/en/latest/miniconda.html 安装 安装…

使用conda下载autopy和其他库

目录 一、前言 二、创建conda虚拟环境和下载库 1、创建conda虚拟环境 2、换源 &#xff08;1&#xff09;pip换源 &#xff08;2&#xff09;conda换源 3、下载库 4、下载超时处理方法&#xff08;如果你的库比较大&#xff0c;比如pytorch&#xff09; 5、用conda下载…

拓宽“主航道”的Serverless与EDA领域,亚马逊云科技不断创新开拓

在新潮如走马灯般变换的时尚界&#xff0c;每隔几年就会刮起一阵复古风。被誉为“时尚教父”的著名设计师安德烈莱昂塔利曾说&#xff1a;“时尚总是在寻找新的灵感和方向&#xff0c;而复古是其中一个重要的来源。” 无独有偶。日新月异的高科技领域也会出现公认的“过时”…

【六祎 - 前端】 前端设计系统组件的备忘录

设计系统按钮 设计痕迹导航可视化组建 进度条 汉堡菜单按钮 导航栏激活状态 状态颜色 web应用程序导航栏间距

可视化fcn-8s head的输出

"""可视化head的输出【可视化的结果是灰度图像"""image Image.open(imgPath).convert("RGB") transform transforms.Compose([transforms.ToTensor(),transforms.Normalize(mean[0.485, 0.456, 0.406], std[0.229, 0.224, 0.225]), …

SQL进阶(2)——SQL语句类型 增删改查CRUD 事务初步 表关联关系 视图 +索引

目录 引出SQL语句类型1.DML数据操纵语言&#xff08;重点&#xff09;2.DQL数据查询语言&#xff08;重点&#xff09;3.DDL(Data Definition Language了解)4.DCL(Data Control Language了解)5.TCL 事务控制语言 运算符和其他函数1.运算符2.其它函数增删改查CRUD 视图索引事务1…

springboot留守儿童爱心网站

本系统主要是设计出留守儿童爱心网站&#xff0c;基于B/S构架&#xff0c;后台数据库采用了Mysql&#xff0c;可以使数据的查询和存储变得更加有效&#xff0c;可以确保留守儿童爱心管理的工作能够正常、高效的进行&#xff0c;从而提高工作的效率。总体的研究内容如下&#xf…

迅捷录屏软件使用中的注意事项

取消勾选时就不会出现右侧的悬浮框滑动的窗口了。 取消鼠标高亮后&#xff0c;录制的视频就不会出现一个空心的小圆圈。

Python+docx实现python对word文档的编辑

前言&#xff1a; 该模块可以通过python代码来对word文档进行大批量的编辑。docx它提供了一组功能丰富的函数和方法&#xff0c;用于创建、修改和读取Word文档。下面是docx模块中一些常用的函数和方法的介绍&#xff1a; 安装&#xff1a;pip install docx 一、准备一个word文档…

计算机毕设 大数据房价数据分析及可视化 - python 房价分析

文章目录 1 课题背景2 数据爬取2.1 爬虫简介2.2 房价爬取 3 数据可视化分析3.1 ECharts3.2 相关可视化图表 4 最后 1 课题背景 房地产是促进我国经济持续增长的基础性、主导性产业。如何了解一个城市的房价的区域分布&#xff0c;或者不同的城市房价的区域差异。如何获取一个城…

声音生成项目(6)——在矢量量化变分编码器上使用自回归模型PixelCNN模型生成新的样本

文章目录 介绍PixelCNN论文简读模型介绍自回归模型PixelCNN模型结构 基础知识回顾参考连接 代码实现PixelConvLayer具体运行过程卷积模块整体网络结构 模型执行效果 Colab代码本子介绍Introduction介绍获取数据创建模型需要两个类 介绍 在上一篇就是介绍了矢量量化变分模型的具…

Stable Diffusion生成图片参数查看与抹除

前几天分享了几张Stable Diffusion生成的艺术二维码&#xff0c;有同学反映不知道怎么查看图片的参数信息&#xff0c;还有的同学问怎么保护自己的图片生成参数不会泄露&#xff0c;这篇文章就来专门分享如何查看和抹除图片的参数。 查看图片的生成参数 1、打开Stable Diffus…

LDAP Tool Box Self Service Password

手册地址&#xff1a;https://self-service-password.readthedocs.io/en/latest/安装要求&#xff1a; Apache or another web server php (>7.4) php-curl (haveibeenpwned api) php-filter php-gd (captcha) php-ldap php-mbstring (reset mail) php-openssl (token cryp…