allure相关笔记

@allure.epic:最高级别的分类,表示一个大的功能、模块或业务场景。功能模块
@allure.feature:表示一个功能模块或业务子场景,位于史诗下。主流程
@allure.story:表示一个具体的测试场景,位于特性下。具体主流程或分支流程-如增、删、改
@allure.title:表示故事中的一个具体测试场景的标题。
在这里插入图片描述

from allure_commons.types import AttachmentType 是用于 Allure 测试报告 的附件类型定义模块,它提供了一些预定义的附件类型,帮助你将文件、文本、图片等信息附加到 Allure 测试报告中。


主要功能

  1. 明确附件类型

    • 当你将文件、日志、截图或其他数据附加到 Allure 报告时,可以通过指定附件类型,让报告正确识别和渲染这些附件。
    • 比如,AttachmentType.TEXT 表示普通文本,AttachmentType.PNG 表示图片。
  2. 增强报告的可读性

    • 不仅展示测试用例的运行结果,还可以附加更多上下文信息,例如请求的 JSON 数据、响应日志、截图等,帮助调试和分析失败原因。

二、AttachmentType

from allure_commons.types import AttachmentType

常用的附件类型

以下是 AttachmentType 中的一些预定义类型及其作用:

附件类型描述
AttachmentType.TEXT普通文本附件,比如日志或控制台输出。
AttachmentType.JSONJSON 格式的数据附件,用于附加请求或响应数据。
AttachmentType.HTMLHTML 格式附件,比如网页内容或报告片段。
AttachmentType.PNGPNG 格式的图片附件,用于附加截图或图表。
AttachmentType.JPGJPG 格式的图片附件。
AttachmentType.CSVCSV 格式的附件,用于附加表格或数据文件。
AttachmentType.XMLXML 格式的数据附件。
AttachmentType.MARKDOWNMarkdown 格式的文本附件,用于附加格式化文本或文档。
AttachmentType.PDFPDF 文件附件,用于附加文档或截图。

示例用法

在测试中使用 AttachmentType 将信息附加到 Allure 报告:

1. 附加文本日志
import allure

allure.attach("这是测试日志内容", name="Test Log", attachment_type=AttachmentType.TEXT)
2. 附加 JSON 数据
response_data = {"status": 200, "message": "Success"}
allure.attach(str(response_data), name="Response JSON", attachment_type=AttachmentType.JSON)
3. 附加截图
with open("screenshot.png", "rb") as image:
    allure.attach(image.read(), name="Screenshot", attachment_type=AttachmentType.PNG)
4. 附加 HTML
html_content = "<html><body><h1>Hello, World!</h1></body></html>"
allure.attach(html_content, name="Sample HTML", attachment_type=AttachmentType.HTML)

在接口测试中的典型用法

结合 Schemathesis 和 Allure,附加接口请求和响应的数据:

@schema.parametrize()
def test_api(case):
    # 调用接口
    response = case.call()
    
    # 附加请求信息
    allure.attach(f"Request URL: {case.path}\nMethod: {case.method}\nHeaders: {case.headers}",
                  name="Request Info", attachment_type=AttachmentType.TEXT)
    
    # 附加响应信息
    allure.attach(response.text, name="Response Body", attachment_type=AttachmentType.JSON)

    # 验证响应
    case.validate_response(response)

总结

AttachmentType 是 Allure 提供的一种类型标识工具,用于明确附件的格式和用途。通过它,你可以将各种数据(如日志、截图、请求/响应信息)附加到测试报告中,让测试结果更加直观和便于分析。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值