如何在python unittest输出中配置diff窗口?

2024-09-29 23:17:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用内置的unittest库(python3.5)和一些测试用例比较(列表)字典测试我的应用程序。当这些测试失败时,输出不是很有用:

First differing element 1:
{'emi[1557 chars]al': 509201.03, 'remaining_time': None, 'nomin[1213 chars]alse}
{'emi[1557 chars]al': '509,201.03', 'remaining_time': None, 'no[1218 chars]alse}

很容易看出哪个列表元素是错误的,但是有限的diff窗口会剪切不同字典条目的键名。我知道我可以用self.maxDiff=None显示完整的diff,但这不是我想要的。我喜欢有限的差异窗口,我只是不喜欢在差异它是放在哪里

我可以配置不同窗口的位置吗?或者,在比较字典时,如何使用python测试获得信息丰富的测试失败报告


Tags: none应用程序列表字典time测试用例diff差异
1条回答
网友
1楼 · 发布于 2024-09-29 23:17:47

这个特性是作为问题#18996的一部分添加的,我可以理解为什么。。。试图在一长串的人物中找出不同之处绝对不是件有趣的事。另一些人抱怨对问题中的缩短缺乏控制,因此问题#21820被打开

进行缩短的代码是here。你也许可以在那里用猴子修补它,但我不建议你这样做。或者,您可以编写自己的方法或扩展TestCase类来比较字典列表,并完全控制结果

相关问题 更多 >

    热门问题