尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Pytest的标签使⽤

Pytest的标签使⽤
📅 发布时间:2026/7/11 6:27:05
1.在Pytest中,标签(也称为标记)是⼀种⽤于对测试⽤例进⾏分类或分组的机制2.通过为测试⽤例添加标签,可以在运⾏测试时选择性地执⾏特定标签的测试⽤例,从⽽ ⽅便地控制测试的范围和⽬标3.可以理解为:标签也是用来做过滤的一种方式
4.Pytest的标签功能基于装饰器来实现5.可以使⽤ @pytest.mark 装饰器为测试函数或测试类添加标签6.常⻅的⽤法是在测试函数或测试类上⽅添加装饰器,并指定相应的标签

一.mark后不同关键字的含义

1.@pytest.mark.skip:标记测试函数为"跳过测试",并提供跳过的原因1.1.这在你想要暂时跳过某些测试的情况下很有用,比如某个功能尚未实现或者有缺陷需要修复
2.@pytest.mark.xfail:标记"预期失败的测试"2.1.这表示预期该测试会失败,但想要运行它并收集结果。可以提供失败的原因
3.@pytest.mark.parametrize:使用"参数化标记来标记测试函数",并提供参数化的值3.1.这样测试函数将会根据提供的参数值运行多次,每次运行时使用不同的参数
4.@pytest.mark.somke:通常用于标记快速运行、覆盖基本功能、且对整体系统影响较小的测试4.1."Smoke测试"旨在快速验证系统的基本功能是否正常,通常在每次代码提交后都会运行,以便快速发现潜在的问题
5.@pytest.mark.slow:通常用于标记运行较慢、覆盖范围较广、对整体系统影响较大的测试5.1."Slow测试"可能包括集成测试、端到端测试、性能测试等,需要更长的时间来执行
6.自定义标签
6.1.@pytest.mark.任意标签内容:但是不能有中文、不能以数字开头;自定义标签mu

@pytest.mark.skip:跳过标记为skip的测试用例(不执行)

1.2.源码还是使用上面的"test001.py"代码

@pytest.mark.somke:仅运行文件中包含somke标签的测试用例

4.2.test001.py
importpytest@pytest.mark.smokedeftest_login():# 测试登录功能assertTrue@pytest.mark.regressiondeftest_registration():# 测试注册功能assertTrue@pytest.mark.smokedeftest_add_to_cart():# 测试添加到购物车功能assertTrue@pytest.mark.regressiondeftest_checkout():# 测试结账功能assertTrue@pytest.mark.skip#标记为跳过的用例deftest001():print("001")@pytest.mark.haileydeftest_test_002():print("添加一个标签后然后运行")
4.2.1.somke执行
pytest-vs-m smoke# 终端命令行的写法pytest.main(["-vs","-m","smoke"])# main文件的写法

@pytest.mark.自定义标签:指定自定义标签的用例运行,用例执行

6.2.源码还是使用上面的"test001.py"代码
pytest-vs-m hailey# 终端命令行的写法pytest.main(["-vs","-m","hailey"])# main文件的写法
6.3.执行后结果报错

6.4.配置pytest.ini⽂件:在项⽬根⽬录下的 pytest.ini ⽂件中可以指定全局标记,以应⽤于整个项⽬
iniCopy code[pytest][pytest]markers=smoke:Run smoke tests regression:Run regression tests hailey:这是对标签的解释
6.5.配置完成后,重新执行一下

二.Pytest标签的逻辑筛选

1.逻辑分为四种:是、非、或、和
1.1.是:pytest.main(["-vs","-m","hailey"])-->>pytest-m'hailey'-vs1.2.非:pytest.main(["-m","not hailey","-vs"])-->>pytest-m'not hailey'-vs1.3.或:pytest.main(["-vs","-m","hailey or smoke"])终端:-->>pytest-m'hailey or smoke'-vs1.4.和:pytest.main(["-vs","-m","hailey and smoke"])终端:-->>pytest-m'hailey and smoke'-vs
2.示例:test001.py
2.1."是"

2.2."非"

2.3."或"

2.4."和":执行结果报错

2.4.1."和"的逻辑:必须同时满足两个或多个条件,所以给自定义标签的这条用例上再加上smoke标签2.4.2.同一条用例,可以标记多个标签
2.4.3.再运行即可

相关新闻

  • AWS IoT Core 设备连接鉴权:3 种方案对比与证书自动化配置
  • LinkSwift:九大网盘直链解析工具终极指南
  • 工地热水工程选型指南:三步搞定高效节能方案

最新新闻

  • 2026年天水市水泥制品生产厂家,实心护坡砖/PC砖/仿石砖/花岗岩/花岗岩挡车失球/护坡砖,水泥制品批发厂家哪家可靠 - 品牌推荐师
  • 如何快速诊断并解决Chromatic调试器断点失效问题
  • FPGA UART 115200bps 收发模块:Verilog 状态机实现与 ModelSim 仿真验证
  • Gemini API托管代理新功能解析:解决生产环境四大痛点
  • 如何高效使用Python抢票脚本:3步完成大麦网自动化购票
  • Ultimate ASI Loader:解锁Windows游戏模组开发新维度

日新闻

  • OpenClaw本地部署:一键直连微信的私有化AI Agent实战指南
  • Kubernetes 系列【10】控制器:ReplicaSet(副本集)
  • 怎么寄快递才能便宜呢?2026年7月寄快递省钱攻略 - 生活情报姬

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号