比如:
断言异常报:
Diff is 6543 characters long. Set self.maxDiff to None to see it.
像这种很长很变态的2个字段的比较出现无法显示具体测试失败的原因,真是让人很上头。
所以,如何让其自己显示错误点,就很重要了,方法其实已经有提示了,说是设定 self.maxDiff 为None。
来看,具体设置如下:
这样就可以了。
现在就可以正常显示错误点了。
不过这里吐槽下,python3.8的断言判断貌似有问题:
11111111111111
{'mismatching_subtrees': {: {: []}, : {: [], : [], : []}, : {: [], : []}, : {: []}}, (, ): {'mismatching': {: []}, 'pairs': [(, ), (, ), (, ), (, )]}, (, ): {'mismatching': {}, 'pairs': []}, (, ): {'mismatching': {}, 'pairs': [(, )]}, (, ): {'mismatching': {}, 'pairs': []}, (, ): {'mismatching': {}, 'pairs': [(, ), (, )]}, (, ): {'mismatching': {: []}, 'pairs': [(, )]}, (, ): {'mismatching': {: [, ]}, 'pairs': []}, (, ): {'mismatching': {}, 'pairs': []}, (, ): {'mismatching': {}, 'pairs': []}}
22222222222222
{(, ): {'pairs': [(, ), (, ), (, ), (, )], 'mismatching': {: []}}, (, ): {'pairs': [], 'mismatching': {}}, (, ): {'pairs': [], 'mismatching': {}}, (, ): {'pairs': [], 'mismatching': {}}, (, ): {'pairs': [(, )], 'mismatching': {}}, (, ): {'pairs': [(, )], 'mismatching': {: []}}, (, ): {'pairs': [(, ), (, )], 'mismatching': {}}, (, ): {'pairs': [], 'mismatching': {: [, ]}}, (, ): {'pairs': [], 'mismatching': {}}, 'mismatching_subtrees': {: {: [], : [], : []}, : {: [], : []}, : {: []}, : {: []}}}
如上内容为我的打印内容,然后就是进行断言判断,我就无语了,完全一样,断言硬是说不一样,我看了报错的点,那是由于字典的无序性导致的2个地段前后位置不一样,最后断言认为我这里不相等,这不是扯犊子么.....字典无序很正常的好吧.....python2.7反正是没出问题的。



