allure报告中如何让测试步骤更清晰

一、allure step测试用例步骤说明

allure step编写测试用例有两种方式

1、with allure.step()用在测试用例中

公共方法代码:

# common_fucntion.py
import allure
import pytest
from common.tools.log_util import Loggerrunlog=Logger().get_log
'''
流程性的用例,添加测试步骤,让用例更清晰
用例步骤:1.登陆, 2.浏览商品 3.添加购物车  4.生成订单  5.支付成功
'''def login(username, password):'''登陆'''# print("前置操作:先登陆")allure.attach("username:{},password:{}".format(username,password),"前置操作:先登陆")def open_goods():'''浏览商品'''# print("浏览商品")allure.attach("这是浏览商品操作")def add_shopping_cart(goods_id="10086"):'''添加购物车'''print("添加购物车")# runlog.info("这是runlog.info打印出的信息")# runlog.error("这是runlog.error打印出的信息")def buy_goods():'''生成订单'''print("buy")def pay_goods():'''支付'''print("pay")

用例代码:

import allure
import sys
from projects.demo_project.interface import common_function@allure.story(u'with allure.step()')
def test_case003(self):"""测试用例三流程性的用例,添加测试步骤,让报告更清晰用例步骤:1.登录 2.浏览商品 3:添加购物车 4.生成订单 5.支付成功"""with allure.step("step1:登录"):common_function.login("zhangsan", "12345")with allure.step("step2:浏览商品"):common_function.open_goods()with allure.step("step3:添加购物车"):common_function.add_shopping_cart()with allure.step("step4:生成订单"):common_function.buy_goods()with allure.step("step5:支付成功"):common_function.pay_goods()

测试报告:
在这里插入图片描述

2、@allure.step()用装饰器的方式修饰在测试步骤的函数上面

公共方法代码:

# common_fucntion.py
import allure
import pytest'''
流程性的用例,添加测试步骤,让用例更清晰
用例步骤:1.登陆, 2.浏览商品 3.添加购物车  4.生成订单  5.支付成功
'''@allure.step("step:登录")
def login(username, password):'''登陆'''print("前置操作:先登陆")@allure.step("step:浏览商品")
def open_goods():'''浏览商品'''print("浏览商品")@allure.step("step:添加购物车")
def add_shopping_cart(goods_id="10086"):'''添加购物车'''print("添加购物车")@allure.step("step:生成订单")
def buy_goods():'''生成订单'''print("buy")@allure.step#("step:支付")
def pay_goods():'''支付'''print("pay")

测试用例代码:

from projects.demo_project.interface import common_function_allure_step@allure.story(u'@allure.step()')
def test_case004(self):"""测试用例三流程性的用例,添加测试步骤,让报告更清晰用例步骤:1.登录 2.浏览商品 3:添加购物车 4.生成订单 5.支付成功"""common_function_allure_step.login("zhangsan", "12345")common_function_allure_step.open_goods()common_function_allure_step.add_shopping_cart()common_function_allure_step.buy_goods()common_function_allure_step.pay_goods()

报告效果图:
在这里插入图片描述
allure.step这两种用法,要结合实际编写测试用例中的场景,看哪种方式更适合,也可以结合着使用。

但allure.step也并不是完美的,当报告中想在步骤中显示参数、预期结果,实际结果,或者截图,文件等内容时,用print或logging来输出。看一下下面截图效果
在这里插入图片描述
print的信息显示在了stdout中,logging.info信息显示在log中,当有logging.error时,又出现了stderr。显然很乱,也没有在对应的测试步骤中显示。为了解决这个问题,研究了allure.attach()这个方法,可以解决。

二、allure.attach():补充说明测试结果

用法1: allure.attach(body, name, attachment_type, extension)
参数说明:

body:要显示的内容或附件
name:附件名字
attachment_type:附件类型
extension:附件扩展名
attachment_type提供的附件类型:
在这里插入图片描述
样例:
在这里插入图片描述
实现


def login(username, password):'''登陆'''# print("前置操作:先登陆")allure.attach("username:{},password:{}".format(username,password),"前置操作:先登陆")def open_goods():'''浏览商品'''# print("浏览商品")allure.attach("这是内容:浏览商品操作","这是标题")

用法二:allure.attach.file(source, name, attachment_type, extension)
source:文件路径,相当于传一个文件
其他参数和上面一致

注:allure.attach() 和 allure.attach.file() 的区别:

allure.attach()表示自己写一个文件,allure.attach.file()从外部传一个文件

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

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

相关文章

ABIDE Preprocessed 结构态MRI数据集介绍及下载

ABIDE数据集介绍及下载 ABIDE Prerocessed项目是在ABIDE I 项目的基础上发展而来,主要是对ABIDE I中采集到的原始数据进行了一定的预处理和初步的特征提取。针对于fMRI和sMRI数据有着不同的处理方式,本次主要对其中提供的sMRI预处理结果进行介绍&#xf…

聊聊TCP协议的粘包、拆包以及http是如何解决的?

目录 一、粘包与拆包是什么? 二、粘包与拆包为什么发生? 三、遇到粘包、拆包怎么办? 解决方案1:固定数据大小 解决方案2:自定义请求协议 解决方案3:特殊字符结尾 四、HTTP如何解决粘包问题的&#xf…

2013年终总结

年终感悟: 2013年就这样过去了,每个人都一样,使用了自己一年生命药水,要知道这种药品是花多少钱都买不来的。现在回头看看,我用这一瓶药水都做了那些事情。在这一年里,有过欢笑,有过悲伤。到了年…

控制算法工程师的工作职责(合集)

控制算法工程师的工作职责1 职责: 1、准确地控制密闭容器的气体或液体的压力,以供校准其他压力表使用; 2、准确地控制温度场的精度,以供校准其他温度计使用; 3、根据不同的控制方案和执行机构/加热制冷方式;测试其特性、建立数学模型、设计算…

SpringCloudAlibaba 微服务生态

一 微服务架构 1.1 微服务 微服务其实是一种架构风格,我们在开发一个应用的时候这个应用应该是由一组小型服务组成,每个小型服务都运行在自己的进程内;小服务之间通过HTTP的方式进行互联互通。 1.2 微服务架构的常见问题 一旦采用微服务系…

【正点原子STM32连载】 第二十六章 USMART调试组件实验摘自【正点原子】STM32F103 战舰开发指南V1.2

1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第二十…

Prosys OPC UA Modbus Server,一个modbus转opcua的服务器软件

Prosys OPC UA Modbus Server是prosys公司发布的一个modbus转opcua服务的软件。 他们的OPC UA 模拟器软件你肯定听说过,软件是免费的。 这个软件是面向企业收费的,需要License,试用版只能运行2小时,不过作为测试使用也足够了。 作用&#…

避坑之网上下单的手机流量卡为什么老是失败!

最近有一些小伙伴们反应:在网上下单的手机流量卡,经常提示下单失败,不是这问题就是那问题的。 对于小伙伴们的诉求,小编向来是来者不拒的。今天就为大家整理一下下单失败的四大原因。 失败原因一:下单信息填写错误 下…

Swift 周报 第三十期

文章目录 前言新闻和社区App、App 内购买项目和订阅即将实行税率调整码出新宇宙Apple 公证服务更新Apple 设计大奖入围名单公布 提案通过的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swift 编辑组自主整理周报的第二十一期,每个模块已初步成型。各位读者…

Flutter的菜鸟教程一:第一个Flutter应用

2019/1/3留(别再问了昂,之前忘了发出来): Flutter SDK 官网 Dart 官网 Flutter是什么? 跨平台(Android/ios)构建移动应用程序的简单高效方式 Flutter核心只有一层轻量的C/C代码,而上层使用了Dart语言(一种现代的、简洁的、面向对象的语言-ps:我没学直…

Flex 布局语法教程

flex-wrap属性 布局的传统解决方案,基于盒状模型,依赖 display属性 position属性 float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 ps:面试的时候也经常会问到一些 一、Flex布局是什么? F…

tomcat的部署

文章目录 一、什么是tomcat二、Tomcat 功能组件结构三、Tomcat 请求过程四、Tomcat的服务部署五、配置虚拟主机六、Tomcat多实例部署 一、什么是tomcat Tomcat 是 Java 语言开发的,Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,是 Apache 软件…

SpringBootWeb案例-1(下: 来源黑马程序员)

3. 员工管理 完成了部门管理的功能开发之后,我们进入到下一环节员工管理功能的开发。 基于以上原型,我们可以把员工管理功能分为: 分页查询带条件的分页查询删除员工新增员工修改员工 3.1 分页查询 3.1.1 基础分页 3.1.1.1 需求分析 我…

Java开发手册中为什么要求三目运算符必须要注意类型对齐

场景 java开发手册中对于三目运算符的使用要求如下: 【强制】三目运算符 condition? 表达式 1 : 表达式 2 中,高度注意表达式 1 和 2 在类型对齐时, 可能抛出因自动拆箱导致的 NPE 异常。 说明:以下两种场景会触发类型对齐的拆箱操作&am…

【统计分析】Bland-Altman图:MedCalc操作指南与Python实现

之前有记录过一致性分析中的天选之子ICC(传送),也提到过Bland-Altman图,Bland-Altman图在一致性分析中作为一种既定量又定性的方法,还有着高颜值的表达展现,受到了广泛地应用。   如下图所示,…

HTML截图

把网页存为一张长图: 操作方法: 1.打开编辑模式(按F12或在空白处右键,下拉菜单中点击“检查”。 2进入编辑模式后,再次快捷键: ctrlshiftp,出现输入框,键入: screenshot后回车,下载图片。

Linux Shell脚本攻略

一、echo命令 1、在echo中转义换行符 默认情况下,echo会在输出文本的尾部追加一个换行符。可以使用选项-n来禁止这种行为。 echo同样接受双包含转义序列的双引号字符串作为参数。在使用转义序列时,需要使用echo -e "包含转义序列的字符串"这…

银行业务相关

省联社,农商行、农村信用社之间的关系 一些知乎回答 省联社、农商行、农村信用社之间有什么联系? - mobye的回答 - 知乎 https://www.zhihu.com/question/24220844/answer/28276903 发源于空想社会主义,世界上第一个信用合作社诞生于1984年的…

转动的车轮-第14届蓝桥杯国赛Scratch真题初中级组第2题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第144讲。 转动的车轮,本题是2023年5月28日上午举行的第14届蓝桥杯国赛Scratch图形化编程初中级组真题第2题…

2023下半年软考中级考试科目-2023年11月软考中级科目难度排行

软考中级资格考试科目分为基础知识和应用技术,基础知识在上午考试,应用技术在下午考试,两个科目的考试题型也有所不同。 基础知识考试题型为客观选择题,共计75道选择题,每小题1分;应用技术为主观问答题&am…