pytest系列之-mark功能的使用
功能使用:
- 标记用例,按正常、异常用例划分等级进行标记,或者按照模块进行划分。
- 标记后,可以执行部分用例。
例如:
你有以下用例,文件目录结构如下:
testcase
----user
----management
----create
----testcase_create_001(正常场景)
----testcase_create_002(参数校验用例)
----testcase_create_003(逻辑校验用例)
----testcase_create_004(场景切换用例)
----testcase_create_005(等等)
----update
----testcase_update_001(正常场景)
----testcase_update_002(参数校验用例)
----testcase_update_003(逻辑校验用例)
----testcase_update_004(场景切换用例)
----testcase_update_005(等等)
----delete
----testcase_delete_001(正常场景)
----testcase_delete_002(参数校验用例)
----testcase_delete_003(逻辑校验用例)
----testcase_delete_004(场景切换用例)
----testcase_delete_005(等等)
----query
----testcase_query_001(正常场景)
----testcase_query_002(参数校验用例)
----testcase_query_003(逻辑校验用例)
----testcase_query_004(场景切换用例)
----testcase_query_005(等等)
----operator(等等)
现在我们要执行其中的一部分用例该怎么办呢?
例如有如下要求:1)只执行正常场景的用例,2)只执行异常场景的用例,3)只执行create模块的用例,4)执行所有user-management下所有用例
就可以使用pytest.mark给用例打标签,一个用例可以打多个标签
针对以上问题,我们可以这样解决:
1)将所有正常用例标记为@pytest.mark.level1
2)将所有异常用例,按照自我评定等级标记用例,分别将参数校验用例标记为@pytest.mark.level2,将逻辑校验用例标记为@pytest.mark.level3,以此类推;
3)将create模块的所有用例标注为@pytest.mark.user_management_create
4)将user-management下所有用例标注为@pytest.mark.user_management
此外,我们还要注册标签名称,才能使用。
官方提供的注册方式,直接在pytest.ini文件中声明即可:
pytest.ini固定格式如下所示:
[pytest]
markers =
level1: mark a test as a level1.(后面是一段说明)
level2: mark a test as a level2.
level3: mark a test as a level3.
user_management: mark feature.
user_management_create: mark feature.
这样,在执行的时候,我们在执行时,通过pytest -m 标签名,来运行相关标签标记的内容。
例如:
执行user模块用例:pytest -m user_management
执行正常用例:pytest -m level1
pytest系列之-mark功能的使用的更多相关文章
- 【pytest系列】- mark标记功能详细介绍
如果想从头学起pytest,可以去看看这个系列的文章! https://www.cnblogs.com/miki-peng/category/1960108.html mark标记 在实际工作中, ...
- pytest系列(二):筛选用例新姿势,mark 一下,你就知道。
pytest系列(一)中给大家介绍了pytest的特性,以及它的编写用例的简单至极. 那么在实际工作当中呢,我们要写的自动化用例会比较多,不会都放在一个py文件里. 如下图所示,我们编写的用例存放在不 ...
- pytest之mark功能
pytest系列(一)中给大家介绍了pytest的特性,以及它的编写用例的简单至极. 那么在实际工作当中呢,我们要写的自动化用例会比较多,不会都放在一个py文件里. 如下图所示,我们编写的用例存放在不 ...
- Pytest系列(一)初次了解
在之前,我分享过unittest系列,后来有很多人问我,能不能出pytest的教程,正好最近在整理pytest相关的资料,那么,就趁着这个机会,去和大家分享一下pytest系列. pytest是一个非 ...
- Winform开发框架之客户关系管理系统(CRM)的开发总结系列1-界面功能展示
一直以来,都希望整合一个以客户为中心的平台,有两个方面的考虑:一是实现客户数据.客户关系.客户管理等方面的整合,以便更好利用好客户的相关资源,发挥最大的营销效益:二是整合目前我的开发框架的所有模块和技 ...
- Pytest系列(9) - 参数化@pytest.mark.parametrize
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest允许在多个级别启 ...
- Pytest系列(8) - 使用自定义标记mark
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest 可以支持自定义 ...
- Pytest系列(八) - 自定义标记mark的使用
一.前言: pytest 支持自定义标记,自定义标记方便用例模块划分,也可以理解方便管理,配合标记参数 -m使用 二.示例代码 # -*- coding: utf-8 -*- # @Time : 20 ...
- Pytest 系列(29)- 详解 allure.dynamic 动态生成功能
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 @allure.title ...
- pytest - 打标记:mark功能
对用例打标记,运行的时候,只运行打标记的用例.如冒烟测试 打标记步骤 1.先注册标记名 在配置文件:pytest.ini 注册标记名,注意必须是这个文件名 标签名加冒号后面可以写说明,必须是英文 2. ...
随机推荐
- el-tree选中子级时默认选中父级(角色授权)
问题1:选中子级时默认选中父级 <el-tree :data="menuData" show-checkbox default-expand-all node-key=&qu ...
- 【笔记】go语言--函数式编程
[笔记]go语言--函数式编程 简单来说,go语言的函数式编程体现的是一个闭包的情况 函数式编程 VS 函数指针 函数是一等公民:参数,变量,返回值都可以是函数 高阶函数 函数->闭包 &quo ...
- 力扣183(MySQL)-从不订购的客户(简单)
题目: 某网站包含两个表,Customers 表和 Orders 表.编写一个 SQL 查询,找出所有从不订购任何东西的客户. Customers 表: Orders 表: 解题思路: 需要查询出没 ...
- Flink 实时计算在微博的应用
简介: 微博通过将 Flink 实时流计算框架跟业务场景相结合,在平台化.服务化方面做了很大的工作,在开发效率.稳定性方面也做了很多优化.我们通过模块化设计和平台化开发,提高开发效率. 微博机器学习研 ...
- 修复 WPF 安装 WindowsAppSDK 库构建失败 NETSDK1082 和 NETSDK1112 找不到 win10-arm 失败
通过在 WPF 项目上安装 WindowsAppSDK 库,可以让 WPF 使用上 Win10 及以上版本提供的 Windows Runtime 强大的 API 集和使用上更多的黑科技.本文记录在安装 ...
- Sentinel如何持久化数据到Nacos?
默认情况下 Sentinel 只能接收到 Nacos 推送的消息,但不能将自己控制台修改的信息同步给 Nacos,如下图所示: 但是在生成环境下,我们为了更方便的操作,是需要将 Sentinel 控制 ...
- Spirng 当中 Bean的作用域
Spirng 当中 Bean的作用域 @ 目录 Spirng 当中 Bean的作用域 每博一文案 1. Spring6 当中的 Bean的作用域 1.2 singleton 默认 1.3 protot ...
- Fast Möbius Transform 学习笔记 | FMT
小 Tips:在计算机语言中 \(\cap\) = & / and, \(\cup\) = | / or First. 定义 定义长度为 \(2^n\) 的序列的 and 卷积 \(A = B ...
- Spring6 当中 获取 Bean 的四种方式
1. Spring6 当中 获取 Bean 的四种方式 @ 目录 1. Spring6 当中 获取 Bean 的四种方式 每博一文案 1.1 第一种方式:通过构造方法获取 Bean 1.2 第二种方式 ...
- MindSpore反向传播配置关键字参数
技术背景 在MindSpore深度学习框架中,我们可以向construct函数传输必备参数或者关键字参数,这跟普通的Python函数没有什么区别.但是对于MindSpore中的自定义反向传播bprop ...