Pytest自动化测试框架:mark用法---测试用例分组执行

pytest中的mark:

  mark主要用于在测试用例/测试类中给用例打标记(只能使用已注册的标记名),实现测试分组功能,并能和其它插件配合设置测试方法执行顺序等。

如下图,现在需要只执行红色部分的测试方法,其它方法不执行:

设置步骤如下:

1、注册标签名,通过pytest.ini配置文件注册;
2、在测试用例的前面加上:@pytest.mark.已注册标签名
3、运行时,根据用例标签过滤(-m标签名)


通过mark分组执行的用例:

1、在项目下新建一个pytest.ini的配置文件;如下图:

 2、在用例里面添加@pytest.mark.标签名;如下代码:

代码示例:

test_demo_mark_01.py文件

import pytestclass TestDemo01:def test_case_01(self):print('exec TestDemo01 test_case_01',end=' ')assert True@pytest.mark.system_testdef test_case_02(self):print('exec TestDemo01 test_case_02',end=' ')assert True

test_demo_mark_02.py文件

import pytestclass TestDemo02:@pytest.mark.login_module@pytest.mark.system_testdef test_case_01(self):print('exec TestDemo02 test_case_01',end=' ')assert Truedef test_case_02(self):print('exec TestDemo02 test_case_02',end=' ')assert True

test_demo_mark_03.py文件

import pytestclass TestDemo03:@pytest.mark.smoke_test@pytest.mark.login_moduledef test_case_01(self):print('exec TestDemo03 test_case_01',end=' ')assert Truedef test_case_02(self):print('exec TestDemo03 test_case_02',end=' ')assert True

3、在run_case.py文件中执行pytest.main(['-s','-v','-m 标签名')

代码示例:

import pytestpytest.main(['-s','-v','-m smoke_test'])                    # 只执行smoke_test分组下的用例
# pytest.main(['-s','-v','-m system_test or login_module'])   # 两个标签的用例都执行
# pytest.main(['-s','-v','-m system_test and login_module'])  # 包含两个标签的用例才执行
# pytest.main(['-s','-v','-m not login_module'])                # 除了该标签之外,其他用例都执行

执行效果:

这可能是B站最详细的pytest自动化测试框架教程,整整100小时,全程实战!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/149211.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

辅助笔记-Jupyter Notebook的安装和使用

辅助笔记-Jupyter Notebook的安装和使用 文章目录 辅助笔记-Jupyter Notebook的安装和使用1. 安装Anaconda2. conda更换清华源3. Jupter Notebooks 使用技巧 笔记主要参考B站视频“最易上手的Python环境配置——Jupyter Notebook使用精讲”。 Jupyter Notebook (此前被称为IPyt…

在Oracle 11g 数据库上设置透明数据加密(TDE)

本文回答2个问题: 11g下简明的TDE设置过程由于11g不支持在线TDE,介绍2中11g下的加密表空间的迁移方法 设置表空间TDE之前 表空间没有加密时,很容易探测到明文数据: create tablespace unsectbs datafile unsectbs.dbf size 10…

学习教授LLM逻辑推理11.19

学习教授LLM逻辑推理 摘要1 引言2前言2.1事件关系提取2.2 演绎推理 3 揭示逻辑推理中的LLMS3.1 LLM如何执行任务3.1.1数据源3.1.2实验装置3.1.3 分析 3.2 LLM如何执行抽象多跳推理?3.2.1数据来源3.2.2 实验装置。3.2.3 分析。 4 逻辑推理教学4.1 LLM的上下文学习4.2…

设置pdb自动启动

参考文档: How to Preserve Open Mode of PDBs When the CDB Restarts (Doc ID 1933511.1) -- 查看pdb的保留状态.无保留状态 select * from DBA_PDB_SAVED_STATES; SYScdbtest SQL> select * from DBA_PDB_SAVED_STATES;no rows selectedSYScdbtest SQL> -…

LeetCode 面试题 16.25. LRU 缓存

文章目录 一、题目二、C# 题解 一、题目 设计和构建一个“最近最少使用”缓存,该缓存会删除最近最少使用的项目。缓存应该从键映射到值(允许你插入和检索特定键对应的值),并在初始化时指定最大容量。当缓存被填满时,它应该删除最近最少使用的…

音频录制实现 绘制频谱

思路 获取设备信息 获取录音的频谱数据 绘制频谱图 具体实现 封装 loadDevices.js /*** 是否支持录音*/ const recordingSupport () > {const scope navigator.mediaDevices || {};if (!scope.getUserMedia) {scope navigatorscope.getUserMedia || (scope.getUserM…

国外客户发开发信怎么发?写外贸邮件方法?

如何给国外客户发开发信?给老外发外贸开发信的技巧? 与国外客户保持联系并积极开展业务合作变得至关重要。一种有效的方式是通过发展信件,这可以帮助建立关系、传递信息和促成商机。蜂邮将介绍如何向国外客户发开发信,以确保您的…

python3:split()分割字符串为字符/字符串列表 2023-11-20

split() 方法通过指定分隔符对字符串进行切片,该方法将字符串分割成子字符串并返回一个由这些子字符串组成的列表。 #split("分隔符","分割次数") str_test"this is test" print (str_test.split()) # split()默认以空格为分…

2023大厂高频面试题之CSS篇(2)

系列文章: 2023前端大厂面试题之JavaScript篇(1) 2023前端大厂面试题之JavaScript篇(2) 2023前端大厂面试题之JavaScript篇(3) 2023前端大厂面试题之JavaScript篇(4) 2022大厂高频面试题之HTML篇 2023前端大厂高频面试题之CSS篇 2023前端大厂高频面试题之Vue篇(1) 2023前端大厂…

金融市场数据至上:QuestDB 为您的数据提供最优解 | 开源日报 No.81

vlang/v Stars: 34.7k License: MIT V 是一个开源项目,它是一种简单、易于学习的编程语言。该项目具有以下核心优势和主要功能: 简洁性:可以在周末内掌握这门语言。快速编译:使用 Clang 后端约为 110k loc/s,本地和…

MR素数测试及 pycryptodome库下 已知MR伪素数以及强伪证 生成指定伪随机数生成器绕过素性检测

MR素数测试在密码学库中应用广泛,通常作为BSPW的一部分来进行素数测试,由于在其算法中,有随机数的使用(选择一个随机的base),若一个MR伪素数 n n n,已知其在某一个强伪证 a a a(随机…

Leetcode—3.无重复字符的最长子串【中等】

2023每日刷题&#xff08;三十二&#xff09; Leetcode—3.无重复字符的最长子串 实现代码 class Solution { public:int lengthOfLongestSubstring(string s) {unordered_set<char> smap;int maxlen 0;int left 0;for(int i 0; i < s.size(); i) {while(smap.fi…

【精选】JSP技术知识点大合集

JSP简介 JSP介绍 JSP(全称Java Server Pages)Java服务端页面技术&#xff0c;是JavaEE平台下的技术规范。它允许使用特定的标签在HTML网页中插入Java代码&#xff0c;实现动态页面处理&#xff0c;所以JSP就是HTML与Java代码的复合体。JSP技术可以快速的实现一个页面的开发&am…

C++大神之路——环境篇

序 在我还在做后端的时候&#xff0c;当时程序员圈里就有个梗很火&#xff0c;说的是当时几种常用编程语言的鄙视链&#xff1a;做C的鄙视做Java的&#xff0c;做Java的鄙视做C#的&#xff0c;而我很不幸&#xff0c;当时在鄙视链最底层。一开始只是当个笑话听听就算了&#x…

MIB 6.1810实验Xv6 and Unix utilities(3)pingpong

Mit6.S081-实验1-Xv6 and Unix utilities-pingpong问题_Isana_Yashiro的博客-CSDN博客 Write a user-level program that uses xv6 system calls to ping-pong a byte between two processes over a pair of pipes, one for each direction. The parent should send a byte to…

00后如何组织双十一大促看这一篇就够了! | 京东云技术团队

引言 大家好&#xff0c;我是王蒙恩&#xff0c;一名“整顿职场”的00后。作为一名去年刚刚加入京东的校招生&#xff0c;我有幸成为本次CDP平台的11.11备战负责人。虽然早在实习的时候就经历过大促&#xff0c;但是真正组织整个部门的备战还是很难忘的。于是提起笔&#xff0…

深信服AC流量管理技术

拓扑图 一.保证通道针对修仙部&#xff0c;访问网站&#xff0c;邮件&#xff0c;DNS&#xff0c;IM&#xff0c;办工 OA&#xff0c;微博论坛网上银行等常见应用保证带宽最低 50%&#xff0c;最高 100% 1. 先新建线路带宽 2.新增流量管理通道&#xff08;保证关键应用&#x…

PPT基础:表格

目录 表格基本功能底纹框线单元格表格美化 表格基本功能 底纹 所在位置&#xff1a;插入图表>>>表设计>>>底纹 底纹&#xff1a;相当于每个单元格的“颜色填充”如何用表格拆分图片 &#xff08;1&#xff09;生成一个表格>>>插入一张图片>>…

我的创作纪念日——365天

机缘 最开始我写博客没有什么特别的原因&#xff0c;主要是因为以下几点&#xff1a; 练习自己的语言组织能力 记录自己学习生活中学到的知识 主要还是想找一个好的保存 Markdown 笔记的平台。 最终我选择了 CSDN&#xff0c;一来是因为 CSDN 对 Markdown 语法的支持较为全面…

计算机视觉的应用17-利用CrowdCountNet模型解决人群数量计算问题(pytorch搭建模型)

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下计算机视觉的应用17-利用CrowdCountNet模型解决人群数量计算问题(pytorch搭建模型)。本篇文章&#xff0c;我将向大家展示如何使用CrowdCountNet这个神奇的工具&#xff0c;以及它是如何利用深度学习技术来解决复杂…