接口自动化-allure测试报告

news2024/7/4 23:05:03

学习目标:

1、测试报告的作用

2、allure的安装

3、allure的基本使用

4、allure的高级使用

学习内容:

1、测试报告的作用

自动化接口的结果呈现虽然可以通过日志文件去查看用例的成功或者失败,但是这样的结果就是不美观,不能情绪的从整体的去查看到底哪些、模块的用例失败的多,失败多少。测试报告就能够很好的从结果上体现出你自动化的结果。在众多测试报告中,目前allure的测试报告是相对操作简单,结果能清晰呈现的报告。

2、allure的安装

安装allure需要注意两点,第一个是allure需要依赖java环境,第二个是安装好的allure需要配置到全局环境变量里面,这样才可以直接在终端使用。

2.1安装allure分成两部分:

2.1.1安装和python、pytest版本兼容的allure-pytest

版本: allure-pytest == 2.8.16

pip install allure-pytest==2.8.16 --index-url  https://pypi.douban.com/simple

安装完成后,打开一个pytest脚本进行验证一下,如果报错:AttributeError:module 'allure' has no attribute...这样的报错是之前安装的 pytest-allure-adaptor 这个插件发生了冲突,这两个插件是不能共存的,去卸掉 pytest-allure-adaptor 这个就行了 ( pip uninstall pytest-allure-adaptor)

2.1.2安装 allure

版本:allure == 2.13.3

这是一个命令行的插件,需要去下载:

1、推荐下载地址之一: https://github.com/allure-framework/allure2/releases

2、下载后解压到自己的文件夹中;

3、配置环境变量

2.2 检查是否安装allure成功

在终端上打开allure,能打开就基本成功了

3、allure的基本使用

3.1 allure的常用使用方法可以下面的方式划分:

对用例来说(下面的关系都是有承接关系的,报告里面的内容也是这样显示的):

用例步骤(@allure.step())--单个测试点(@aluure.title)--测试功能(@allure.story)--测试模块(@allure.feature)--测试产品(@allure.epic)

对于其他的功能(这些标记的最后都是会在测试报告里面呈现的):

给用例标记下bug来源:@allure.issue()

给用例标记用例的来源:@allure.testcase()

给用例补充描述:@allure.description()

给用例标记等级:@allure.severity()

给用例添加链接(我一般是添加对应的日志链接):@allure.link()

给用例添加附件:@allure.attachment()

3.2 allure的运行:

第一步先生成allure需要的数据:

pytest 要运行的py文件 --alluredir 保存生成文件的目录

例如:pytest allure_demo.py --alluredir ../report/allure_report

第二步把生成的文件加载到allure报告中

例如:allure serve ../report/allure_report

使用生成报告提供的地址在浏览器中就可以打开报告了

4、allure的高级使用

4.1 allure的用例等级划分:

blocker  阻塞缺陷(功能未实现,无法下一步)

critical  严重缺陷(功能点缺失)

normal   一般缺陷(边界情况,格式错误)

minor  次要缺陷(界面错误与ui需求不符)

trivial   轻微缺陷(必须项无提示,或者提示不规范)

4.2 只执行某些allure标记的用例参数

例如想执行story为story1的用例:

pytest allure_demo.py --alluredir ../report/allure_report --allure-stories="用户故事1"

4.3 把日志目录配置上

主要是在allure的attach或者是link上附上失败日志文件或者上目录即可

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

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

相关文章

外包干了3个多月,技术退步明显。。。。。

先说一下自己的情况,本科生生,19年通过校招进入广州某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…

阿里云大模型「让照片跳舞」刷屏朋友圈,有哪些信息值得关注?

介绍 大家好,我分享聊聊阿里通义千问APP中全民舞王功能。 网络热舞结合AI视频,这是以后不用学习跳舞? 可以尝试下效果,一张图片生成视频。 APP快速使用 搜索下载通义千问APP 打开APP,选中一张照片来跳舞。 这里…

Halcon算子精讲:形态学操作(圆形操作)

膨胀操作(圆形膨胀) 算子 dilation_circle(Region, RegionDilation, 3.5) 原理 将区域中边界的每个像素点以3.5为半径做圆,原有区域 所做圆区域 膨胀后区域。 作用 扩大目标所在区域或连接区域破碎部分。 对比图 腐蚀操作(圆…

陀螺研究院发布《中国产业区块链生态图谱 2024版》

从发展实践来看,产业区块链在我国已历经了4年的高速发展,发展至今,我国区块链发展环境基本夯实,形成了技术突破与应用拓宽的创新土壤,围绕区块链为主体的产业链条不断纵深延伸,在基础设施支撑、融合创新拓展…

外包干了5个月,技术明显退步了...

先说一下自己的情况,本科生,19年通过校招进入湖南某软件公司,干了接近4年的功能测试,今年12月份,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…

惊呆:RocketMQ顺序消息,是“4把锁”实现的(顺序消费)

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中,最近有小伙伴拿到了一线互联网企业如阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多关于RocketMQ 的、很重要的面试题: 如何保证RocketMQ消息有序? Ro…

一文详解 Java 限流接口实现

作者:非有 一、限流 1.1 为什么要进行限流? 1.瞬时流量过高,服务被压垮? 2.恶意用户高频光顾,导致服务器宕机? 3.消息消费过快,导致数据库压力过大,性能下降甚至崩溃&#xff1f…

图像分割实战-系列教程10:U2NET显著性检测实战2

🍁🍁🍁图像分割实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Pycharm中进行 本篇文章配套的代码资源已经上传 U2NET显著性检测实战1 U2NET显著性检测实战2 U2NET显著性检测实战3 5、残差Unet模块 class RSU7(n…

【经验】VSCode连接远程服务器(可以使用git管理、方便查看和编辑Linux源码)

1、查看OpenSSH Windows10通常自带OpenSSH不需要安装。 Windows10下检查是否已经安装OpenSSH的方法: 1)按下快捷键Win + X,选择Windows PoweShell(管理员) 2)输入以下指令: Get-WindowsCapability -Online | ? Name -like ‘OpenSSH*’ 3)如果电脑未安装OpenSSH,…

全视通-医院智能视讯系统 病房视讯系统解决方案 智能医院对讲系统信息发布系统

医院智能视讯系统解决方案 1、行业背景 对于患者来说现阶段各大医院的住院部大都面临同样的问题,例如患者就医缺乏精准化医疗,缺乏对患者的心理健康引导,缺乏多维度沟通渠道,缺乏多元增值服务等。 对于传统医院住院部病房&am…

C# Attribute特性实战(1):Swtich判断优化

文章目录 前言简单Switch问题无参Swtich方法声明Swtich Attribute声明带有Swtich特性方法主方法结果 有参Switch修改代码修改运行过程运行结果 总结 前言 在经过前面两章内容的讲解,我们已经简单了解了如何使用特性和反射。我们这里解决一个简单的案例 C#高级语法 …

【Unity】如何在Unity中使用C#的NuGet 包资源

【背景】 Unity的脚本语言是C#,而C#有很多功能和能力可以通过nuget包提供。有没有办法把这些能力结合到Unity中一起使用呢?如果可以,那将大大扩展Unity中各类功能实现的便捷性。 【方法】 答案是:你可以! 获取Nuge…

【数据库原理】(8)关系数据库的关系代数

关系数据语言可以分为三类: 关系代数、关系演算和介于关系代数与关系演算之间的语言 SQL。 下面专门讲述用对关系进行运算来表达查询要求的关系代数。关系代数的运算对象是关系,运算结果也是关系。关系代数用到的运算符包括四类:集合运算符、专门的关系运算符、算术…

Mac上安装 Node.js 的版本管理工具 n,以及 n 使用,的使用

安装 最近刚更换 Mac 本进行项目的开发,刚上手 Mac 本还不是很熟练,需要安装 Node.js 的包管理工具 在 Windows 上我是实用的 nvm 来管理的 Node 版本,但是我尝试下载 Nvm ,发现下载安装后的 Nvm 无法使用,提示 “Th…

关于苹果iOS 16:揭开伪装成飞机模式的隐形蜂窝接入漏洞的动态情报

一、基本内容 在日常生活中,网络威胁不断演变,给个人和组织带来了一系列重大挑战。网络犯罪分子使用的一种最常见的、最具破坏性的方法之一就是网络钓鱼。这种攻击方式通过电子邮件、短信或其他通讯渠道冒充可信实体,诱使个人泄露敏感信息&am…

AI到底是啥?

什么是AI? AI,即人工智能(Artificial Intelligence),是一门研究如何让机器模拟人类智能的学科。它涉及到构建可以感知、推理、学习和决策的智能系统,以解决复杂问题和实现人类类似的任务。 AI的技术包括机器学习、自…

Nginx 开启目录浏览功能

目录 1.没开启前的页面效果 2.开启目录浏览 1.没开启前的页面效果 这是我的一个网站页面,没配置目录浏览功能前的效果 2.开启目录浏览 来到 server 配置文件下 /etc/nginx/conf.d, 然后编辑配置文件,保存之后查看语法是否正确 autoindex on; # 开启目…

MySQL数据库的CURD、常见函数及UNION和UNION ALL

一、概述 MySQL是一种流行的关系型数据库管理系统,广泛应用于各种应用场景。在MySQL中,CURD操作是指创建(Create)、读取(Read)、更新(Update)和删除(Delete)…

TikTok需要的原生IP是什么?海外独享原生IP地址如何获取?

相信很多做跨境店铺或者TikTok直播的小伙伴都听说过”原生IP”,网络上关于它的判定方法也五花八门,今天小编以自身跨境经验来为大家介绍原生IP是什么?有什么好处?如何获取,感兴趣请继续看下去! 一、什么是原生IP/非原生IP? 原生…

JAVA学习专栏

JAVA专栏 Java核心技术 Java核心技术 Java练手算法 Java练手算法 Java数据结构和算法 Java数据结构和算法 Java设计模式 Java设计模式 Java并发编程 Java并发编程 MySQL数据库 MySQL数据库 Java项目管理Maven Java项目管理Maven 项目管理工具gradle 项目管理工具gradle…