标签: jsonunit

如何告诉assertJsonEquals在比较中忽略一个字段

我正在使用JsonUnitassertJsonEquals

我在代码中执行以下操作:

assertJsonEquals(resource("ExpecedResponse.json"),
                         ActualResponse, when(IGNORING_ARRAY_ORDER));
Run Code Online (Sandbox Code Playgroud)

ActualResponse具有从HTTP POST的响应。

ExpectedResponse.json是一些字段的JSON文件如如下:

{
  "columnNames": [
    "date",
    "signalType",
    "userId",
  ],
  "values": [
    [
      222555888,
      "OUT",
      "000-000-111-444"
    ],
    [
      333666999,
      "IN",
      "000-000-222-333"
    ],
  ],
  "lastUpdatedTimestamp": "2018-01-26T00:00:00Z"
}
Run Code Online (Sandbox Code Playgroud)

我将这两个响应与assertJsonEquals进行比较。

我的问题是:如何告诉它忽略检查lastUpdatedTimestamp字段,而是使用assertJsonEquals或您推荐的任何其他库检查其他所有内容?

如果我从ExpectedResponse.json中删除了lastUpdatedTimestamp,那么它会抱怨它丢失了!

谢谢您的帮助,谢谢。

java junit json assert jsonunit

3
推荐指数
1
解决办法
4041
查看次数

标签 统计

assert ×1

java ×1

json ×1

jsonunit ×1

junit ×1