Pytest学习二十- allure之@allure.step()、allure.attach的详细使用

一、@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,extension)
source:文件路径,相当于传一个文件
示例代码如下:

# -*- 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",arg2):
    pass


@allure.step("验证登录过程")
def test_login():
    open()
    input_UsernameAndPassWord()


# 添加附件
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报告中展示如下:

相关文章

目录1、前言2、mark的使用(一)注册自定义标记(二)在测试...
用例执行状态用例执行完成后,每条用例都有自己的状态,常见...
什么是conftest.py可以理解成一个专门存放fixture的配置文件...
前言pytest默认执行用例是根据项目下的文件名称按ascii码去收...
前言:什么是元数据?元数据是关于数据的描述,存储着关于数...