在以下示例中,我希望测试在expecting=时失败NotImplementedError。import pytestdef fun(): raise ValueError()@pytest.mark.parametrize("expecting", [ (ValueError), (NotImplementedError)])def test_something( expecting): with pytest.raises(ValueError): fun()但是,它通过了:test_something[ValueError] PASSEDtest_something[NotImplementedError] PASSED为什么会出现这种行为,正确的用法是什么?
1 回答
ABOUTYOU
TA贡献1812条经验 获得超5个赞
您的测试对expecting
. 你写了with pytest.raises(ValueError):
,所以 pytest 一直在寻找ValueError
,这就是fun()
引发的原因。也许你打算改写with pytest.raises(expecting):
?
添加回答
举报
0/150
提交
取消