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 ...
随机推荐
- ES6(模板字符串,三点运算符,Symbol,iterator接口)
模板字符串 作用:简化字符串的拼接 模板字符串必须用``包含 变化的部分使用${xxx}包含 对象的简写方式 同名的属性可以省略不写 可以省略函数的function 箭头函数 箭头函数的特点 箭头函数 ...
- 【HarmonyOS】【DevEco Studio】NOTE02 :Create a “Hello World ”Application
Author:萌狼蓝天 StudyTime:2021/12/06 Version:3.0 Beta1 包结构 src | --> resource 资源文件目录 | --> layout/ ...
- java多线程2:Thread中的方法
静态方法: Thread类中的静态方法表示操作的线程是"正在执行静态方法所在的代码块的线程". 为什么Thread类中要有静态方法,这样就能对CPU当前正在运行的线程进行操作.下面 ...
- 06 - Vue3 UI Framework - Dialog 组件
做完按钮之后,我们应该了解了遮罩层的概念,接下来我们来做 Dialog 组件! 返回阅读列表点击 这里 需求分析 默认是不可见的,在用户触发某个动作后变为可见 自带白板卡片,分为上中下三个区域,分别放 ...
- 如何查看Python的版本号
一.如何查看Python的版本号 win+r输入cmd在输入:python --version回车即可
- ANTLR 语法设计
下面学习如何编写语法. 如何定义语法规则 一种语言模式就是一种递归的语法结构. 我们需要从一系列有代表性的输入文件中归纳出一门语言的结构.在完成这样的归纳工作后,我们就可以正式使用ANTLR语法来表达 ...
- JDK ThreadPoolExecutor核心原理与实践
一.内容概括 本文内容主要围绕JDK中的ThreadPoolExecutor展开,首先描述了ThreadPoolExecutor的构造流程以及内部状态管理的机理,随后用大量篇幅深入源码探究了Threa ...
- Linux 输入指令显示 command not found(未找到命令)解决办法
问题摘要:当我在linux中安装了一个Nginx,最后需要检查是否安装成功的时候,输入了Nginx -v 提示未找到命令(服务器中英文提示为 command not found) 其他软件命令未找到问 ...
- Java面向对象~类和对象&方法,类方法
面向对象 概念: 1.同一类事物的抽象描述,不是具体的 2.类和对象的关系: 类 是抽象的. 对象 是具体的. 3.对象的体征,称为"属性&q ...
- 总结Vue第一天:简单介绍、基本常用知识、辅助函数
总结Vue第一天:简单介绍.基本常用知识.辅助函数 中文官网:https://cn.vuejs.org/v2/guide/syntax.html 遇到不熟悉的可以先看一下官网,然后再看一下一些别人写的 ...