【发布时间】:2019-04-23 19:41:52
【问题描述】:
unittest 模块非常适合检测代码中的问题。 我理解使用断言隔离和测试部分代码的想法:
self.assertEqual(web_page_view.func, web_page_url)
但除了这些断言之外,您之前可能还有一些逻辑,在相同的测试方法中,可能会出现问题。
我想知道在 TestCase 子类的方法中是否需要考虑手动异常处理。
因为如果我在 try-catch 中包装了一个块,如果失败了,测试返回 OK 并且不会失败:
def test_simulate_requests(self):
"""
Simulate requests to a url
"""
try:
response = self.client.get('/adress/of/page/')
self.assertEqual(response.status_code, 200)
except Exception as e:
print("error: ", e)
在此类测试中是否应始终避免异常处理?
【问题讨论】:
-
通常的做法是在您期望引发一些异常时使用
assertRaises断言。在其他情况下,您应该将它们视为常规测试,而不是自己手动捕获任何异常。
标签: python django unit-testing