我注意到,当我的 Python 单元测试在函数顶部包含文档时,有时框架会在测试输出中打印它们。通常,测试输出包含每行一个测试:
<test name> ... ok
如果测试有一个表单的文档字符串
"""
test that so and so happens
"""
一切都很好。但是如果测试在一行中有一个文档字符串:
"""test that so and so happens"""
然后测试输出不止一行,包括这样的文档:
<test name>
test that so and so happens ... ok
我找不到记录在案的行为。有办法关闭它吗?
最佳答案
使用文档字符串的第一行;负责的方法是TestCase.shortDescription()
,您可以在测试用例中覆盖它:
class MyTests(unittest.TestCase):
# ....
def shortDescription(self):
return None
通过始终返回 None
,您可以完全关闭该功能。如果您想以不同的方式格式化文档字符串,可以使用 self._testMethodDoc
。
关于python - 如何阻止 Python unittest 打印测试文档字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12962772/