Pytest_定制allure报告(12)
定制报告需要先导入allure模块,再使用以下装饰器方法:
- feature: 标注主要功能模块。
- story: 标注feature功能模块下的分支功能。
- description:在报告中显示用例描述。
- step: 标注测试用例步骤。
- issue && testcase:标注用例关联的链接。
- attach: 添加一些附加内容到测试报告中。
- severity: 标注测试用例的重要级别,包含blocker, critical, normal, minor, trivial 几个不同的等级。
feature && story
主要用于为用例分层级
import allure
@allure.feature("评论模块")
class TestComment:
@allure.story("填写所有信息,点击提交,预期评论成功")
def test_001(self):
print("\n填写信息")
print("\n点击提交")
@allure.story("不输入任何信息,点击提交,预期提示填写必填项")
def test_002(self):
print("\n点击提交")
报告样式如下:

description
用于在报告中增加用例描述信息,除了这个方法外,还可以在方法下使用3个引号的方式增加用例描述信息。
import allure
@allure.feature("评论模块")
class TestComment:
@allure.story("填写所有信息,点击提交,预期评论成功")
@allure.description("用例描述...这样...那样...")
def test_001(self):
print("\n填写信息")
print("\n点击提交")
@allure.story("不输入任何信息,点击提交,预期提示填写必填项")
def test_002(self):
"""用例描述...也可以...这样...那样"""
print("\n点击提交")
报告样式如下:

step
在报告中增加测试步骤的显示。
import allure
@allure.feature("评论模块")
class TestComment:
@allure.story("填写所有信息,点击提交,预期评论成功")
@allure.description("用例描述...这样...那样...")
def test_001(self):
with allure.step("1、填写信息"):
print("\n填写信息")
assert 1 == 1
with allure.step("2、点击提交"):
print("\n点击提交")
assert 2 == 1
@allure.story("不输入任何信息,点击提交,预期提示填写必填项")
def test_002(self):
"""用例描述...也可以...这样...那样"""
print("\n点击提交")
报告样式如下:

issue && testcase
issue与testcase用于在报告中增加关联链接,用法基本一样,第1个参数为关联的url地址,第2个为缺省参数,作用是为地址的别名。
import allure
@allure.feature("评论模块")
class TestComment:
@allure.story("填写所有信息,点击提交,预期评论成功")
@allure.description("用例描述...这样...那样...")
@allure.issue("http://www.baidu.com")
@allure.testcase("http://www.baidu.com", "百度一下")
def test_001(self):
with allure.step("1、填写信息"):
print("\n填写信息")
assert 1 == 1
with allure.step("2、点击提交"):
print("\n点击提交")
assert 2 == 1
@allure.story("不输入任何信息,点击提交,预期提示填写必填项")
def test_002(self):
"""用例描述...也可以...这样...那样"""
print("\n点击提交")
报告样式如下:

attach
在报告中添加一些附加内容,内容可以为文本信息、图片、文件等。
import allure
@allure.feature("评论模块")
class TestComment:
@allure.story("填写所有信息,点击提交,预期评论成功")
@allure.description("用例描述...这样...那样...")
@allure.issue("http://www.baidu.com")
@allure.testcase("http://www.baidu.com", "百度一下")
def test_001(self):
with allure.step("1、填写信息"):
print("\n填写信息")
assert 1 == 1
with allure.step("2、点击提交"):
print("\n点击提交")
# attach 添加文本信息
allure.attach("文本信息标注信息...", "别名")
# attach 可以添加图片
allure.attach.file(r"D:\Users\User\Desktop\图片管理\60-60.jpg", "图片", attachment_type=allure.attachment_type.JPG)
# attach 可以添加html文件
allure.attach.file(r"D:\Users\User\Desktop\图片管理\test.html", "html文件", attachment_type=allure.attachment_type.HTML)
@allure.story("不输入任何信息,点击提交,预期提示填写必填项")
def test_002(self):
"""用例描述...也可以...这样...那样"""
print("\n点击提交")
报告样式如下:

severity
为测试用例的划分重要级别,包含blocker, critical, normal, minor, trivial 5个不同的等级。默认是normal级别。
import allure
@allure.feature("评论模块")
class TestComment:
@allure.story("填写所有信息,点击提交,预期评论成功")
@allure.description("用例描述...这样...那样...")
@allure.issue("http://www.baidu.com")
@allure.testcase("http://www.baidu.com", "百度一下")
def test_001(self):
with allure.step("1、填写信息"):
print("\n填写信息")
assert 1 == 1
with allure.step("2、点击提交"):
print("\n点击提交")
# attach 添加文本信息
allure.attach("文本信息标注信息...", "别名")
# attach 可以添加图片
allure.attach.file(r"D:\Users\User\Desktop\图片管理\60-60.jpg", "图片", attachment_type=allure.attachment_type.JPG)
# attach 可以添加html文件
allure.attach.file(r"D:\Users\User\Desktop\图片管理\test.html", "html文件", attachment_type=allure.attachment_type.HTML)
@allure.severity("blocker")
def test_002(self):
pass
@allure.severity("critical")
def test_003(self):
pass
@allure.severity("minor")
def test_004(self):
assert 1 == 2
报告样式如下:

环境配置信息
在概览中查看环境配置默认是没有的。

若要在报告中增加环境信息需要在第一步生成的json文件中,增加一个environment.properties文件,文件内容如下样式:
systemVersion=win10
pythonVersion=3.8.5
allureVersion=2.13.9
baseUrl=http://192.168.1.x:8080
projectName=test

然后再执行并生成报告,报告样式如下:

在allure 1.X的中,可以通过一个以test开头的py文件来配置,该方法在 2.X已弃用,仅供了解:

报告样式如下:

Pytest_定制allure报告(12)的更多相关文章
- allure报告定制(pytest+jenkins)
环境及安装可查看 pytest+jenkins安装+allure导出报告 要让allure报告更漂亮,更直观,需要在脚本中写入allure特性 一开始allure调用step().story().fe ...
- pytest+allure(allure-pytest基于这个插件)设计定制化报告
一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.allure-pytest 5.allure2.8.0 6.java1.8 allure-pytest快速安装 在 ...
- pytest+allure(pytest-allure-adaptor基于这个插件)设计定制化报告
一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.pytest-allure-adaptor 5.allure2.8.0 6.java1.8 pytest-allu ...
- 如何利用jenkins插件查看allure报告-----完整篇(解决404和无数据问题)
背景: python3+appium+pytest+allure写了安卓的自动化脚本,在windows本机pycharm上跑通过后生成了allure报告. 公司jenkins搭建在linux服务器上 ...
- pytest系列(四)- pytest+allure+jenkins - 持续集成平台生成allure报告
pytest是什么 pytest是python的一款测试框架,拥有unittest的功能并比它更丰富. allure是什么 有非常多的优秀的测试框架,但却是有非常少优秀的报告工具可以展示非常清楚的用例 ...
- pytest框架优化——将异常截屏图片加入到allure报告中
痛点分析: 在做allure定制化的时候,关于附件添加这一块,我们在代码里可以添加我们准备好的附件,这里用图片,通过下面的方法就能实现 allure.attach(file, '图片描述', allu ...
- pytest框架之allure报告生成
一.关于安装 allure是跟pytest一起集成使用的,所以需要同时安装pytest以及allure-pytest插件: pip install pytest pip install allure- ...
- pytest生成allure报告
在pytest框架中可以用很多插件来生成测试报告,本文总结下怎么生成allure报告 allure allure是一款开源的,专门用来展示测试结果的一个工具,allure可以与很多的测试框架做集成,比 ...
- 移动自动化appium(2)- Allure报告使用详解
6 Allure报告 6.1 Allure介绍 Allure是一个独立的报告插件,生成美观易读的报告,比之前的html好看,目前支持的语言:Java.PHP.Ruby.Python.C#等 6.2 A ...
随机推荐
- 捷码:重塑DevOps,打造更流畅紧密的开发与服务交付业务链
捷码Gemcoder 1周前如果有机会安排一场行业吐槽大会,熟悉软件开发.交付.服务业务各环节的业内人士,对开发中的各种扯皮.交付反反复复.运维服务中的提心吊胆,往往会有很多深刻的体验和刻骨铭心的案例 ...
- shell脚本 查看cpu的温度
一.简介 源码地址 日期:2018/8/24 介绍:查看主板上单个多核CPU中温度最高的一个内核 效果图: 二.使用 适用:centos6+ 语言:英文 注意:需要先安装lm_sensors,不支持虚 ...
- 新一代Java程序员必学的Docker容器化技术基础篇
Docker概述 **本人博客网站 **IT小神 www.itxiaoshen.com Docker文档官网 Docker是一个用于开发.发布和运行应用程序的开放平台.Docker使您能够将应用程序与 ...
- mit6.830-lab2-常见算子和 volcano 执行模型
一.实验概览 github : https://github.com/CreatorsStack/CreatorDB 这个实验需要完成的内容有: 实现过滤.连接运算符,这些类都是继承与OpIterat ...
- 3、回溯算法解题套路框架——Go语言版
前情提示:Go语言学习者.本文参考https://labuladong.gitee.io/algo,代码自己参考抒写,若有不妥之处,感谢指正 关于golang算法文章,为了便于下载和整理,都已开源放在 ...
- CF670A Holidays 题解
Content 假设 \(1\) 年有 \(n\) 天,而每周同样会有 \(5\) 天工作日和 \(2\) 天休假.求一年最小的休假天数和最大休假天数. 数据范围:\(1\leqslant n\leq ...
- Tornado 的安全性保障机制Cookie XSRF跨站请求伪造阻断 &用户验证机制
6.1 Cookie 对于RequestHandler,除了在第二章中讲到的之外,还提供了操作cookie的方法. 设置/获取 注意:Cookie 在浏览器调试时, 只有在第一次访问该网站的时候获取到 ...
- 关于几种场景下的state
state jsx 1.state 2.setState 3.函数 事件 调用 mobx 1.state 2.setState( action) 3.view(函数 事件 调用) 一个store ...
- 在mysql5.8中用json_extract函数解析json
背景:某个字段的数据中是JSON,需要提取其中的卡号部分,如: {"objType":"WARE","orderId":6771254073 ...
- 谷歌浏览器请求返回JSON内容自动格式化
我们使用谷歌浏览器的扩展插件 下载插件 官方网址:https://github.com/gildas-lormeau/JSONView-for-Chrome 我也上传了 一份:https://yvio ...