pytest系列(二):筛选用例新姿式,mark 一下,你就知道。

pytest系列(一)中给你们介绍了pytest的特性,以及它的编写用例的简单至极。函数

那么在实际工做当中呢,咱们要写的自动化用例会比较多,不会都放在一个py文件里。测试

以下图所示,咱们编写的用例存放在不一样的py文件当中。spa

 

 

 

当咱们想只运行诸多py文当中的部分用例,怎么办呢?命令行

好比自动化工做当中,选择test_a,test_33,test_000这3个用例来运行的话,如何过滤呢?blog

 

 

pytest.mark一下

在pytest当中,先给用例打标记,在运行时,经过标记名来过滤测试用例。自动化

 

 

 

步骤1:给用例打标签

给用例打标记分为2个步骤:io

 

1)注册标签名class

官方提供的注册方式有2种,这里只提供一种最简单直接的方式:test

经过pytest.ini配置文件注册。在pytest.ini文件当中:配置

[pytest] # 固定的section名

markers= # 固定的option名称

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

  标签名2

  标签名N

示例以下:

 

 

 

2)在测试用例/测试类中给用例打标记(只能使用已注册的标记名)

在 测试用例的前面加上:@pytest.mark.已注册标签名

以下图,对3个测试文件当中的,要筛选出来的用例,都打了me标签 。

 

 

 

 

步骤2:运行时,根据用例标签过滤(-m 标签名)

pytest提供了命令行参数来配置运行时的条件。

在命令行当中,输入pytest --help来查看全部可用的参数。

 

 

 

也能够调用pytest.main()函数,将运行时的参数以列表传进去,一样也能够达到命令行运行的效果。

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

 

 

 

运行此文件的结果:

相关文章
相关标签/搜索