zoukankan      html  css  js  c++  java
  • pytest-mark标签装饰器

    功能:1:pytest执行用例时,可以执行带有自定义标记的用例

    • 使用方法:
      • 在用例函数前面加上一个装饰器@pytest.mark.mark_name,其中,mark_name为标记名称,如 @pytest.mark.mn1
      • 在Terminal里输入命令pytest -s test_study.py -m=mn1,或在main语句块里直接输入pytest.main(["-s","test_study.py", "-m=mn1"]),这样,我们就可以只执行标记为mn1的用例。

    例:

     1    @pytest.mark.mn1  
     2    def test_csse3(self):   
     3        print("这是 用例1")
     4 
     5    @pytest.mark.mn2   
     6    def test_csse2(self):     
     7       print("这是 用例2")
     8 
     9    def test_csse1(self):   
    10       print("这是 用例3")
    11 
    12 if __name__ == '__main__':    
    13     pytest.main(["-s", "test_study.py", "-m=mn1"])

    -m 选择对应的标签

    """
    一个:
    "-m","m1"
    
    同时运行多个:
    "-m","m1 or m2"
    
    排除法:
    "-m","not_m1"
    
    排除法:
    "-m","not(m1 or m2)"

    功能2:控制用例执行顺序

    • 安装pytest-ordering:pip install pytest-ordering
    用法:在用例前面加上@pytest.mark.run(order=n),即可实现按先后顺序执行,n为执行顺序。数字越大优先级越高
    方法还可以跨文件执行,只要当前目录下的所有.py的用例,标明了执行顺序,就可以按标明的顺序执行,不论在哪个文件里。

     执行结果:

    • 这是 用例3
    • 这是 用例2
    • 这是 用例1

  • 相关阅读:
    【JLOI2011】飞行路线
    P3369 【模板】普通平衡树
    P1144 最短路计数
    P1462 通往奥格瑞玛的道路
    【NOIP2017】宝藏
    P1120 小木棍
    P3919 【模板】可持久化数组(可持久化线段树/平衡树)
    P3834 【模板】可持久化线段树 1(主席树)
    矩阵清零--进军硅谷
    二维数组搜素--进军硅谷
  • 原文地址:https://www.cnblogs.com/Mollylin/p/14445603.html
Copyright © 2011-2022 走看看