我有一个带有助手方法assertContains(super, sub)
的测试用例。sub
参数是测试用例的硬编码部分。万一它们格式不正确,我希望我的测试用例因错误而中止。在
我该怎么做?我试过了
def assertContains(super, sub):
if isinstance(super, foo): ...
elif isinstance(super, bar): ...
else: assert False, repr(sub)
然而,这会使测试变成失败而不是错误。在
我可以引发其他异常(例如ValueError
),但我想明确声明我声明的测试用例是错误的。我可以做ErrorInTest = ValueError
然后raise ErrorInTest(repr(sub))
,但感觉有点恶心。我觉得应该有一个电池包括这样做的方式,但阅读友好的手册没有给我任何建议。在
类
TestCase
中的方面有一个assertRaises()
,在该类中,您希望确保待测试代码引发错误。在如果您想在此时引发错误并中止对该单元的测试(并继续进行下一个单元测试),只需引发一个未捕获的异常;单元测试模块将捕捉到它:
我不认为除了直接引发错误以声明单元测试用例导致错误之外,还有其他API方面可用。在
^{pr2}$结果:
相关问题 更多 >
编程相关推荐