一、@allure.step的用法

  • 可以理解为我们编写测试用例中的每一步操作步骤,而在allure中表示对每个测试用例进行非常详细的步骤说明
  • 通过 @allure.step(),可以让测试用例在allure报告中显示更详细的测试过程

    示例代码
# -*- coding: utf-8 -*-
# @Time : 2020/12/12 8:34
# @Author : longrong.lang
# @FileName: test_allure.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/longronglang
import allure @allure.step("打开网站首页")
def open():
pass @allure.step("输入账号、密码")
def input_UsernameAndPassWord():
sendAndClickLogin("xiaoqiang", "1") @allure.step("输入账号、密码{arg1},{arg2},并点击登录")
def sendAndClickLogin(arg1, arg2):
pass @allure.step("验证登录过程")
def test_login():
open()
input_UsernameAndPassWord()

测试用例在allure的显示

小结

  • step(参数),参数就是标题,你传什么,在allure上的步骤名就显示什么
  • 支持位置参数和关键字参数 {arg1},{arg2},可参考报告中“ 输入账号、密码'xiaoqiang','1',并点击登录”处,如果函数的参数没有匹配成功就会报错

二、allure.attach的用法

作用: allure报告还支持显示许多不同类型的附件,可以补充测试结果;可根据自身情况进行调整

语法: allure.attach(body, name, attachment_type, extension)

参数列表

body:要显示的内容(附件)

name:附件名字

attachment_type:附件类型,是 allure.attachment_type 里面的其中一种

extension:附件的扩展名(比较少用)

allure.attachment_type提供了哪些附件类型?

语法二: allure.attach.file(source, name, attachment_type, extension)

source:文件路径,相当于传一个文件

示例代码如下:

# 添加附件案例
def test_attachments():
# 在测试报告中画了一个html页面
allure.attach('<head></head><body><strong>HTML页面,HelloWorld!</strong> </body>', 'Attach with HTML type', allure.attachment_type.HTML)
# 添加一个html附件
allure.attach.file('./report.html', attachment_type=allure.attachment_type.HTML)
# 添加一个图片附件
allure.attach.file('./demo.jpg', attachment_type=allure.attachment_type.JPG)

在allure报告中展示如下:

Pytest学习(20)- allure之@allure.step()、allure.attach的详细使用的更多相关文章

  1. Pytest 学习(二十五)- allure 命令行参数【转】

    先看看 allure 命令的帮助文档 cmd 敲 allure -h allure 命令的语法格式 allure [options] [command] [command options] optio ...

  2. Pytest 学习(二十七)- Jenkins+Allure+Pytest的持续集成

    一.配置 allure 环境变量 1.下载 allure是一个命令行工具,可以去 github 下载最新版:https://github.com/allure-framework/allure2/re ...

  3. Pytest系列(20)- allure结合pytest,allure.step()、allure.attach的详细使用

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 allure除了支持pyte ...

  4. Pytest 系列(28)- 参数化 parametrize + @allure.title() 动态生成标题

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 参数化 @pytest.ma ...

  5. Pytest系列(23)- allure打标记,@allure.feature()、@allure.story()、@allure.severity()的详细使用

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 前面几篇文章主要介绍了all ...

  6. Pytest 系列(29)- 详解 allure.dynamic 动态生成功能

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 @allure.title  ...

  7. Pytest学习笔记10-生成html报告

    前言 在pytest中,如何生成html测试报告呢,pytest提供了pytest-html插件,可以帮助我们生成测试报告,当然,如果希望生成更加精美的测试报告,我们还可以使用allure生成报告,下 ...

  8. Pytest学习(三) - setup和teardown的使用

    一.前言 从文章标题可以看出,就是初始化和释放的操作,根据我的java习惯来学习pytest,个人感觉没差太多,理解上也不是很难. 哦,对了,差点跑题了,这个框架是基于Python语言的,在学习的时候 ...

  9. OpenCV学习(20) grabcut分割算法

    http://www.cnblogs.com/mikewolf2002/p/3330390.html OpenCV学习(20) grabcut分割算法 在OpenCV中,实现了grabcut分割算法, ...

随机推荐

  1. 查看ceph集群被哪些客户端连接

    前言 我们在使用集群的时候,一般来说比较关注的是后台的集群的状态,但是在做一些更人性化的管理功能的时候,就需要考虑到更多的细节 本篇就是其中的一个点,查询ceph被哪些客户端连接了 实践 从接口上来说 ...

  2. rgw的rgw_thread_pool_size配置调整

    前言 在比对rgw的不同前端的区别的时候,官方说civetweb是通过线程池来控制连接的,beast是后面加入了流控相关的,这块一直也没有调整过相关的参数,然后通过ab压测了一下,还是有很明显的区别的 ...

  3. java.lang.IllegalStateException: Duplicate key 20

    这个我在公司遇到的一个问题.原因:使用Map<String, String> RelationMap = relation.stream().collect(Collectors.toMa ...

  4. Java web项目 上传图片保存到数据库,并且查看图片,(从eclipse上移动到tomact服务器上,之路径更改,包括显示图片和导出excel)

    //项目做完之后,在本机电脑运行完全正常,上传图片,显示图片,导出excel,读取excel等功能,没有任何问题,但是,当打成war包放到服务器上时,这些功能全部不能正常使用. 最大的原因就是,本机测 ...

  5. Fastjson远程代码执行漏洞复现

    fastjson漏洞简介 Fastjson是一个Java库,可用于将Java对象转换为其JSON表示形式.它还可以用于将JSON字符串转换为等效的Java对象,fastjson爆出多个反序列化远程命令 ...

  6. html图片拖放

    <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title> ...

  7. webug第九关:URL跳转

    第九关:URL跳转 不太明白,看源码 接受了一个URL的参数

  8. MapReduce的工作流程

    MapReduce的工作流程 1.客户端将每个block块切片(逻辑切分),每个切片都对应一个map任务,默认一个block块对应一个切片和一个map任务,split包含的信息:分片的元数据信息,包含 ...

  9. 基于Python+requests搭建的自动化框架-实现流程化的接口串联

    框架产生目的:公司走的是敏捷开发模式,编写这种框架是为了能够满足当前这种发展模式,用于前后端联调之前(后端开发完接口,前端还没有将业务处理完毕的时候)以及日后回归阶段,方便为自己腾出学(mo)习(yu ...

  10. Java之 函数(五)

    第一部分 : IDEA开发工具 1.数组 1.1 数组介绍 ​ 数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致. 1.2 数组的定义格式 1.2.1 第一种格式 ​ 数据类型[] 数组名 ...