zoukankan      html  css  js  c++  java
  • pytest之mark标签注册及用例匹配规则修改

    通过pytest.ini可以mark注册标签和修改用例匹配规则,但要放在运行文件的根目录下才能生效(文件中最好不要有汉字,否则报编码错误)
    一、mark标签:
    [pytest]
    markers =
    success:
    smoke
    login
    auth
    demo
    pytest -m smoke(用and连接多个标签名)
    执行被装饰品@pytest.mark.smoke装饰的所有测试用例
    标记测试用例的步骤:
    1、在pytest.ini上注册标签p
    [pytest]
    markers =
    success
    2、将标签贴到指定的测试用例,@pytest.mark.标签名称
    3、在命令行执行 pytest -m "标签名称" (最好加上双引号)

    一个测试用例可以标记多个标签
    将类标记有两种方式:
    1、@pytest.mark.标签名称,
    2、类属性形式:pytestmark = [pytest.mark.add,pytest.mark.smoke]


    跳过函数:pytest.mark.skip(reason="原因"),跳过该测试用例不执行
    @pytest.mark.skipif(sys.platform == 'win32',reason='平台不兼容'),满足某个条件后跳过该测试用例


    标记的作用:
    可以区分不同功能、模块、数据库、操作系统、正向冒烟测试做标记,然后测试用例执行起来非常灵活
    二、自定义用例匹配规则
    python_files =
    test_.py
    check_
    .py
    example_.py
    python_functions =
    test
    python_classes =
    *Suite
    测试用例匹配规则:
    pytest是以方法为单位发现用例的,写不写测试类不重量
    运行规则
    1、文件名以test
    .py开头或
    _test.py结尾
    2、类名不必以Test开头,但最好加上方便识别,但类下面的方法必须以test开头,没有__init__函数
    3、没写类,只写test命名的函数也可以识别

    运行pytest参数:

    1.指定测试模块:pytest test_mol.py
    2.指定测试目录:pytest testing/

    3.通过节点ID来运行测试:
    节点ID的组成:py模块名::类名::函数名::或py模块名::函数名
    示例:pytest test_.py::Test::test_*
    4.通过关键字表达式过滤执行:关键字要用双引号
    pytest -k "TestClass and not test_func"
    执行符合匹配表达式的文件名、类名、方法名的用例

  • 相关阅读:
    argparse模块的使用
    tf.stack() /tf.unstack()
    什么是tensor
    tf.size()函数
    tf.nn.l2_loss()的用法
    CNN中的卷积
    tf.reverse()
    学习音视频编程技术 博客
    shell 批量计算MD5值
    线程池的实现
  • 原文地址:https://www.cnblogs.com/czz-728/p/13143188.html
Copyright © 2011-2022 走看看