如何通过函数作为pytest参数化灯具?

时间:2019-03-01 09:51:33

标签: python pytest fixtures parametrized-testing

如何在Python中将函数作为参数传递?我想做类似下面的代码。

我的目标是传递不同的参数来测试单个功能。

def __internal_function(inputs):
    a,b,c,d = inputs

    new_value_of_b = copy.deepcopy(b)

    name = b['name']
    age = b['age']
    weight = b['weight']
    height = b['height']

    new_value_of_b2 = [name, age, weight, height]
    new_value_of_b3= new_value_of_b['weight']['unit'] = 'cm'
    del new_value_of_b['age']
    return new_value_of_b,new_value_of_b2,new_value_of_b3


@pytest.mark.parametrize('values',__internal_function,'expected_code',[100,200,300])
assert func(__internal_function)== expected_code

1 个答案:

答案 0 :(得分:0)

如果您使用两个变量作为参数,则正确的语法为:

BeanFactoryPostProcessor

如果函数的输出是可迭代的,则可以将function用作参数。