Java:org.skyscreamer.jsonassert.JSONCompare

接上次《Java:找个好用的 json diff (未完待续)

https://github.com/skyscreamer/JSONassert (看起来代码很旧,不过暂时没发现啥问题)

使用 org.skyscreamer.jsonassert.JSONCompare 来比对 Json

支持 JSONCompareMode

  • JSON 是否可扩展(extensible):如:预期{"k1":1},实际{"k1":1,"k2":2},新增了k2,视为扩展
    • JSON 中的数组是否严格排序(strict array ordering):如:预期{"k1":[1,2,3]},实际{"k1":[2,3,1]},数组顺序不同,视为未严格排序
    • 另外,支持自定义模式 Customization
模式 说明
严格模式(STRICT) 不可扩展, 数组严格排序
宽大模式(LENIENT) 可扩展,数组不用排序
不可扩展模式(NON_EXTENSIBLE) 如字面意思,可忽略数组排序
严格排序模式(STRICT_ORDER) 如字面意思,可扩展

参考: