Pytest自定义mark标记筛选用例
本文介绍如何在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标记筛选用例的介绍至此结束。希望本文内容能对您的学习有所帮助,同时也欢迎大家继续支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









