zoukankan      html  css  js  c++  java
  • pytest系列(二):筛选用例新姿势,mark 一下,你就知道。

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

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

    如下图所示,我们编写的用例存放在不同的py文件当中。

     

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

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

     

     

    pytest.mark一下

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

     

    步骤1:给用例打标签

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

     

    1)注册标签名

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

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

    [pytest] # 固定的section名

    markers= # 固定的option名称

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

      标签名2

      标签名N

    示例如下:

     

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

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

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

     

     

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

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

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

     

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

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

     

    运行此文件的结果:

  • 相关阅读:
    2019.6.20刷题统计
    36 线程 队列 守护线程 互斥锁 死锁 可重入锁 信号量
    35 守护进程 互斥锁 IPC 共享内存 的方式 生产者消费者模型
    34 进程 pid ppid 并发与并行,阻塞与非阻塞 join函数 process对象 孤儿进程与僵尸进程
    33 udp 域名 进程
    32 粘包 文件传输
    31 socket客户端. 服务器 异常 语法
    30 网络编程
    29 元类 异常
    26 封装 反射 常用内置函数
  • 原文地址:https://www.cnblogs.com/Simple-Small/p/11077123.html
Copyright © 2011-2022 走看看