【发布时间】:2014-06-25 07:17:05
【问题描述】:
py.test 堆栈跟踪现在看起来像这样:
Traceback (most recent call last):
File "/home/foo_tbz_di476/src/djangotools/djangotools/tests/ReadonlyModelTestCommon.py", line 788, in test_stale_or_missing_content_types
self.assertEqual([], errors, 'Stale/Missing ContentTypes: %s' % '\n'.join(errors))
File "/usr/lib64/python2.7/unittest/case.py", line 511, in assertEqual
assertion_func(first, second, msg=msg)
File "/usr/lib64/python2.7/unittest/case.py", line 740, in assertListEqual
self.assertSequenceEqual(list1, list2, msg, seq_type=list)
File "/usr/lib64/python2.7/unittest/case.py", line 722, in assertSequenceEqual
self.fail(msg)
File "/usr/lib64/python2.7/unittest/case.py", line 408, in fail
raise self.failureException(msg)
如果输出跳过unittest 模块中的行,对我的肉眼来说会容易得多。
例子:
Traceback (most recent call last):
File "/home/foo_tbz_di476/src/djangotools/djangotools/tests/ReadonlyModelTestCommon.py", line 788, in test_stale_or_missing_content_types
self.assertEqual([], errors, 'Stale/Missing ContentTypes: %s' % '\n'.join(errors))
我尝试了选项--tb=short,但这并没有这样做。
更新
首选没有 unix 管道的解决方案(如 py.test ...| grep)。
【问题讨论】:
-
您能否发布一个生成此输出的示例测试以及您用来运行它的命令。 AFAIK,py.test 根本不应该输出这样的回溯。
-
我已将此作为功能请求添加到 py.test github 页面上:github.com/pytest-dev/pytest/issues/1434
标签: python unit-testing