在测试失败时,如何在python中使用diff断言JSON相等性?

在测试失败时,如何在python中使用diff断言JSON相等性?,json,assert,python-behave,Json,Assert,Python Behave,当断言失败时,如何在python行为中断言JSON相等并获得一个diff作为输出 在Ruby中我使用:,所以我基本上是在Python中寻找类似的功能 使用正常的assert语句,输出是毫无帮助的。我不久前需要类似的功能。我发现最简单的方法就是使用。您可以通过以下方式安装它: $ pip install jsoncompare 然后在step代码中,您可以做出如下断言: from jsoncompare import jsoncompare if jsoncompare.are_same(js

当断言失败时,如何在python行为中断言JSON相等并获得一个diff作为输出

在Ruby中我使用:,所以我基本上是在Python中寻找类似的功能


使用正常的
assert
语句,输出是毫无帮助的。

我不久前需要类似的功能。我发现最简单的方法就是使用。您可以通过以下方式安装它:

$ pip install jsoncompare
然后在step代码中,您可以做出如下断言:

from jsoncompare import jsoncompare

if jsoncompare.are_same(json1, json2):
    assert True
else:
    print (jsoncompare.are_same(json1, json2))
    assert False 
默认情况下,behave不显示
print
语句,除非出现故障,否则必须使测试失败才能显示差异输出