Ano*_*ous 15 python unit-testing exception-handling exception
我知道unittestPython模块.
我知道课堂的assertRaises()方法TestCase.
我想编写一个在未引发异常时成功的测试.
有什么提示吗?
Han*_*Gay 23
def runTest(self):
try:
doStuff()
except:
self.fail("Encountered an unexpected exception.")
Run Code Online (Sandbox Code Playgroud)
更新:正如liw.fi所提到的,默认结果是成功,所以上面的例子是反模式.如果你想在失败之前做一些特别的事情,你应该只使用它.您还应该捕获可能的最具体的异常.
小智 14
测试运行器将捕获您未声明的所有异常.从而:
doStuff()
self.assert_(True)
Run Code Online (Sandbox Code Playgroud)
这应该工作正常.您可以省略self.assert_调用,因为它实际上没有做任何事情.我喜欢把它放在那里以证明我没有忘记一个断言.
我使用这种模式作为你问过的断言:
with self.assertRaises(Exception):
try:
doStuff()
except:
pass
else:
raise Exception
Run Code Online (Sandbox Code Playgroud)
当doStuff()引发异常时,它将完全失败.
| 归档时间: |
|
| 查看次数: |
9813 次 |
| 最近记录: |