我正在尝试测试代码,我想在一个带有 pytest.raises(ValueError) 异常的单个规则中测试多个规则,是否有 Pythonic 方法可以做到这一点?在下面的示例中,我想测试所有 4 个函数调用是否都会抛出值错误。
With pytest.raises(ValueError):
function_that_throws_exception(param1)
function_that_throws_exception(param2)
function_that_throws_exception(param3)
function_that_throws_exception(param4)
Run Code Online (Sandbox Code Playgroud)
我建议使用parametrize:
@pytest.mark.parametrize("param", [param1, param2...])
def test_function_that_throws_exception(param):
with pytest.raises(ValueError):
function_that_throws_exception(param)
Run Code Online (Sandbox Code Playgroud)