pytest用例标记

@pytest.mark.parametrize后边传参执行用例的时候,如果参数特别多,用例执行结果中有一组失败的话,就不好查找到底是哪一组失败了

但是如果给每组参数进行标记,这样的话,执行结果就能一眼看出来是哪一组参数执行失败了

具体参数标记方法如下:

利用pytest.param函数,将参数传递过去

 在结果中,可以看出来,每条用例执行结果会加上我们标记的data1、data2 、data3

import sys
import os
import pytest
sys.path.append(os.path.join(os.path.dirname(__file__)))


def add(a, b):
    print(a,  a+b)
    return a+b


data = [
    pytest.param(1, 2, 4, id='data1'),
    pytest.param(2, 3, 5, id='data2'),
    pytest.param(3, 5, 10, id='data3')
]


@pytest.mark.parametrize('a, b, exp', data)
def test_add(a, b, exp):
    assert add(a, b) == exp


if __name__ == '__main__':
   pytest.main(["-s", "-v", "test_ddt.py"])
View Code
原文地址:https://www.cnblogs.com/merry-0131/p/15049265.html