【发布时间】:2017-07-18 00:05:17
【问题描述】:
我正在寻找清理正常的 python unittest 输出。我希望控制台输出仍然是
test_isupper (__main__.TestStringMethods) ... ok
test_split (__main__.TestStringMethods) ... ok
test_upper (__main__.TestStringMethods) ... ok
test_fail (__main__.TestFail) ... ERROR
----------------------------------------------------------------------
Ran 4 tests in 0.001s
OK
但是对于失败测试,我想捕获详细的输出,并将其放入日志文件中。所以与其与控制台输出内联...
======================================================================
FAIL: test_fail (__main__.TestFail)
----------------------------------------------------------------------
Traceback (most recent call last):
File "test.py", line x
self.assertTrue(False)
AssertionError: False is not True
======================================================================
与任何调试级别的记录器输出一起记录到文件中以供进一步调查。有没有办法重载 unittest.testcase 中的记录器来做我想做的事?
我应该提一下,我对 python 还是很陌生...
【问题讨论】:
-
你必须向社区分享测试的完整代码,测试失败的最低限度,以便任何人都可以帮助你,只有这些数据是不可能的
-
代码对问题并不重要,因为问题与操纵和重定向“unittest”模块的输出有关。我给出的示例失败测试只有两行...
def test_fail(self): assertTrue(False)
标签: python-3.x logging python-unittest