Pytest自定义mark标记筛选用例

江岸
江岸
发布时间:2026-10-15| 6人浏览过
原创

本文介绍如何在Pytest中通过自定义mark标记来筛选特定测试用例。首先需在pytest.ini中注册标记名,随后在测试代码中使用该标记。运行测试时,利用-m参数指定标记名即可精准执行目标用例,提高自动化测试效率。

如截图所示,编写的测试用例分散存储在不同的Python文件中。

若需从多个Python文件中仅执行部分指定用例,应如何处理?

例如在自动化测试场景中,若需仅运行test_a、test_33及test_000这三个用例,该如何进行过滤操作?

使用pytest.mark进行标记。

在Pytest框架中,首先为测试用例添加标记,随后在运行阶段依据标记名称来过滤并执行对应的测试用例。

操作步骤一:为用例添加标记。

为用例添加标记主要包含两个步骤:

第一步:注册标记名称。

官方提供了两种注册方式,此处仅介绍一种最为简单直接的方法:

通过修改pytest.ini配置文件来完成注册。具体配置如下:

[pytest] # 固定的section名

markers= # 固定的option名称

  标签名1: 标签名的说明内容。

  标签名2

  标签名N

配置示例如下所示:

第二步:在测试用例或测试类中使用已注册的标记名进行标记(仅限使用已注册的标记名)。

在具体的测试用例代码前添加:@pytest.mark.已注册标签名。

如图所示,针对三个测试文件中需要筛选出的用例,均添加了me标记。

操作步骤二:在运行时根据用例标签进行过滤(使用-m 标签名参数)。

Pytest提供了命令行参数用于配置运行时的执行条件。

在命令行界面输入pytest --help即可查看所有可用的参数列表。

此外,也可以调用pytest.main()函数,将运行参数以列表形式传入,同样能够实现命令行运行的效果。

用于根据标签名过滤用例的参数为:-m 标签名。

执行该文件后的运行结果如下:

关于Pytest自定义mark标记筛选用例的介绍至此结束。希望本文内容能对您的学习有所帮助,同时也欢迎大家继续支持本站。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。