pytest文档32-allure描述用例详细讲解
前言
pytest+allure是最完美的结合了,关于allure的使用,本篇做一个总结。
allure报告可以很多详细的信息描述测试用例,包括epic、feature、story、title、issue、testcase、severity等
环境准备
- python 3.6
- pytest 4.5.0
- allure-pytest 2.8.6
allure用例描述
| 使用方法 | 参数值 | 参数说明 |
|---|---|---|
| @allure.epic() | epic描述 | 敏捷里面的概念,定义史诗,往下是feature |
| @allure.feature() | 模块名称 | 功能点的描述,往下是story |
| @allure.story() | 用户故事 | 用户故事,往下是title |
| @allure.title(用例的标题) | 用例的标题 | 重命名html报告名称 |
| @allure.testcase() | 测试用例的链接地址 | 对应功能测试用例系统里面的case |
| @allure.issue() | 缺陷 | 对应缺陷管理系统里面的链接 |
| @allure.description() | 用例描述 | 测试用例的描述 |
| @allure.step() | 操作步骤 | 测试用例的步骤 |
| @allure.severity() | 用例等级 | blocker,critical,normal,minor,trivial |
| @allure.link() | 链接 | 定义一个链接,在测试报告展现 |
| @allure.attachment() | 附件 | 报告添加附件 |
测试案例
pytest结合allure测试用例
import pytest
import allure
# 作者:上海-悠悠 qq交流群:874033608
@pytest.fixture(scope="session")
def login_fixture():
print("前置条件:登录")
@allure.step("步骤1")
def step_1():
print("操作步骤---------------1")
@allure.step("步骤2")
def step_2():
print("操作步骤---------------2")
@allure.step("步骤3")
def step_3():
print("操作步骤---------------3")
@allure.epic("epic对大Story的一个描述性标签")
@allure.feature("测试模块")
class TestDemoAllure():
@allure.testcase("http://49.235.x.x:8080/zentao/testcase-view-6-1.html")
@allure.issue("http://49.235.x.x:8080/zentao/bug-view-1.html")
@allure.title("用例的标题")
@allure.story("用户故事:1")
@allure.severity("critical")
def test_case_1(self, login_fixture):
'''case description:作者:上海-悠悠 qq交流群:874033608
1.点文章分类导航标签 -跳转编辑页面
2.编辑页面输入,分类名称,如:上海-悠悠-可以输入
3.点保存按钮保存成功
'''
step_1()
step_2()
@allure.story("用户故事:2")
def test_case_2(self, login_fixture):
print("测试用例1")
step_1()
step_3()
@allure.epic("epic对大Story的一个描述性标签")
@allure.feature("模块2")
class TestDemo2():
@allure.story("用户故事:3")
def test_case_3(self, login_fixture):
print("测试用例1")
step_1()
@allure.story("用户故事:4")
def test_case_4(self, login_fixture):
print("测试用例1")
step_3()
报告展示
cd到用例目录执行用例生成allure报告
pytest --alluredir ./report/allure
allure serve ./report/allure
报告展示内容

命令行参数
pytest运行用例的时候可以加上allure标记用例的参数
--allure-severities=SEVERITIES_SET
Comma-separated list of severity names. Tests only
with these severities will be run. Possible values
are: blocker, critical, normal, minor, trivial.
--allure-epics=EPICS_SET
Comma-separated list of epic names. Run tests that
have at least one of the specified feature labels.
--allure-features=FEATURES_SET
Comma-separated list of feature names. Run tests that
have at least one of the specified feature labels.
--allure-stories=STORIES_SET
Comma-separated list of story names. Run tests that
have at least one of the specified story labels.
--allure-link-pattern=LINK_TYPE:LINK_PATTERN
Url pattern for link type. Allows short links in test,
like 'issue-1'. Text will be formatted to full url
with python str.format().
选择运行你要执行epic的用例
pytest --alluredir ./report/allure --allure-epics=epic对大Story的一个描述性标签
选择运行你要执行features的用例
pytest --alluredir ./report/allure --allure-features=模块2
选择运行你要执行features的用例
pytest --alluredir ./report/allure --allure-stories="用户故事:1"
关于allure的使用基本上就是这些了
pytest文档32-allure描述用例详细讲解的更多相关文章
- 【自动化基础】allure描述用例详细讲解及实战
前言 allure可以输出非常精美的测试报告,也可以和pytest进行完美结合,不仅可以渲染页面,还可以控制用例的执行.下面就对allure的使用进行一个详细的介绍和总结. 需要准备的环境: pyth ...
- pytest文档3-pytest+Allure+jenkins+邮箱发送
前言: 虽然网上有很多邮件配置的文章,但还是想自己写一下配置的过程,因为在中间也碰到了不同坑.按照这个文档配置的话,99%都可以成功. 一.jenkins 配置邮箱 1.打开jenkins后进入点 ...
- pytest文档40-pytest.ini配置用例查找规则(面试题)
前言 面试题:pytest如何执行不是test开头的用例?如执行 xxx_*.py这种文件的用例. pytest.ini 配置文件可以修改用例的匹配规则. pytest命令行参数 cmd打开输入pyt ...
- pytest文档2-pytest+Allure+jenkins+邮箱发送
前言: 上一章节讲解了tomcat+jenkins的环境搭建,这一章节主要讲一下Allure报告在jenkins上的配置 步骤: 1.新建一个item 2.输入项目的名称,选择自由风格,点击保存 3. ...
- pytest文档28-重复执行用例(pytest-repeat)
前言 平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来. 自动化运行用例时候,也会出现偶然的bug,可以针对单个用例, ...
- pytest文档47-allure报告添加用例失败截图
前言 使用 selenium 做 web 自动化的时候,很多小伙伴希望用例失败的时候能截图,把异常截图展示到allure报告里面. pytest 有个很好的钩子函数 pytest_runtest_ma ...
- pytest文档33-Hooks函数获取用例执行结果(pytest_runtest_makereport)
前言 pytest提供的很多钩子(Hooks)方法方便我们对测试用例框架进行二次开发,可以根据自己的需求进行改造. 先学习下pytest_runtest_makereport这个钩子方法,可以更清晰的 ...
- pytest文档1-pytest+Allure+jenkins+邮箱发送
前言: 1.pytest+allure是目前很多公司使用较多的一种报告样式,因为它更详细,各种指标更直观(简单的说就是看着更高大上,更能装X). 环境准备: 1.Windows10 2.Allure ...
- pytest文档12-skip跳过用例
前言 pytest.mark.skip可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能 skip意味着只有在满足某些条件时才希望测试通过,否则pytest应该跳过运行测试. 常见示例是 ...
随机推荐
- python3中的继承和多态
*继承 当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类(Base class.Super clas ...
- 17、Wireless
1. WLAN在物理层采用的是无线电 i. wlan采用csma/ca代替lan的csma/cd ii. 工作在半双工模式,共享带宽(无法在发送的同时接收信号) 2. WLAN会遇到的问题 ...
- Ceph 存储集群2-配置:心跳选项、OSD选项、存储池、归置组和 CRUSH 选项
一.心跳选项 完成基本配置后就可以部署.运行 Ceph 了.执行 ceph health 或 ceph -s 命令时,监视器会报告 Ceph 存储集群的当前状态.监视器通过让各 OSD 自己报告.并接 ...
- 不要被C++“自动生成”所蒙骗
http://www.cnblogs.com/fanzhidongyzby/archive/2013/01/12/2858040.html C++对象可以使用两种方式进行创建:构造函数和复制构造函数. ...
- CCF_201604-3_路径解析
没有用stack来写,直接用了字符串和指针,过程有点复杂的.首先对读入的每一个路径,判断它是绝对路径或者相对路径,然后确定起始的路径,然后继续一位位的判断,"//","/ ...
- HDU_3853_概率dp
http://acm.hdu.edu.cn/showproblem.php?pid=3853 又因为总期望为子期望的加权和,加权因子为子期望的转移概率,所以得到:dp[ i ][ j ]= p1 * ...
- char *p=new char[n] delete[] p出错
上面不delete不出错然后下面单个输入出现乱码
- 题解 SP1716 【GSS3 - Can you answer these queries III】
\[ Preface \] 没有 Preface. \[ Description \] 维护一个长度为 \(n\) 的数列 \(A\) ,需要支持以下操作: 0 x y 将 \(A_x\) 改为 \( ...
- Python常用库 - logging日志库
logging的简单介绍 用作记录日志,默认分为六种日志级别(括号为级别对应的数值) NOTSET(0) DEBUG(10) INFO(20) WARNING(30) ERROR(40) CRITIC ...
- 机器学习(ML)十三之批量归一化、RESNET、Densenet
批量归一化 批量归一化(batch normalization)层,它能让较深的神经网络的训练变得更加容易.对图像处理的输入数据做了标准化处理:处理后的任意一个特征在数据集中所有样本上的均值为0.标准 ...