在我正在使用nosetests
运行的一系列测试中,assertEqual(a,b)
失败,a
和b
(相当长的字符串)被逐字打印出来填充屏幕,混淆了所有其他内容。通过将其添加到测试用例中,可以创建类似的情况:
def test_my_long_strings(self):
self.assertEqual('a'*5000, 'b'*5000)
我试过设置
--verbosity=0
和--debug-log=File
,但没有一个产生任何效果,这两个字符串仍然打印在屏幕上。是否仍要关闭
assertEqual
详细信息或将其重定向到stderr以外的单独文件(其中还报告了测试失败/通过)? 最佳答案
assertEqual将失败的断言消息作为第三个参数。
class TestMyTest(unittest.TestCase):
def test_example(self):
a = 'a'
b = 'b'
self.assertEqual(a, b, 'a did not equal b')
打印失败位置的堆栈跟踪
AssertionError: a did not equal b
参考:
https://docs.python.org/2/library/unittest.html#unittest.TestCase.assertEqual
关于python - python unittests assertEqual打印失败时太多,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23415810/