我正在使用org.json将XML转换为JSON,并且我想(使用JUnit)对我的解析过程进行单元测试。
但是,当我尝试使用json.equals比较对象时,它失败了。我知道jackson已经正确地实现了equals方法。有没有办法用org.json对对象的相等性进行单元测试?
...
JSONObject actual = XML.toJSONObject(xml);
JSONObject expected = new JSONObject().put("key","val");
assertEquals(expected, actual); // false
assertEquals(expected.toString(), actual.toString()) // true发布于 2016-05-16 22:11:57
您需要使用github https://github.com/skyscreamer/JSONassert上提供的JSONassert
发布于 2021-06-14 15:54:36
您也可以尝试使用ModelAssert - https://github.com/webcompere/model-assert -如下所示:
JSONObject actual = XML.toJSONObject(xml);
JSONObject expected = new JSONObject().put("key","val");
assertJson(actual)
.isEqualTo(expected);但是,诸如键顺序之类的内容可能会受到转换为JSONObject的影响。在这种情况下,您可以放松键顺序:
assertJson(actual)
.where().keysInAnyOrder()
.isEqualTo(expected);https://stackoverflow.com/questions/37255868
复制相似问题