比较两个 json 文件时忽略特定属性

Ignore specific attributes when comparing two json files

我已成功使用 JSONAssert 比较两个 json 响应,如下所示:

JSONAssert.assertEquals(response2.getResponseBodyContent(), response1.getResponseBodyContent(), JSONCompareMode.LENIENT)

我现在需要忽略某些属性,如下所述:

我的新声明是:

JSONAssert.assertEquals(response2, getResponseBodyContent(), new CustomComparator(JSONCompareMode.LENIENT, new Customization("EffectiveEpochDate", (o1, o2) -> true)));

我收到以下错误:

java.lang.Error: Unresolved compilation problems:   
Groovy:expecting ')', found ',' @ line 51, column 154.  
Groovy:expecting ')', found '->' @ line 51, column 160.     
Groovy:expecting ')', found '->' @ line 51, column 160.     
Groovy:expecting '}', found '->' @ line 51, column 160.     
Groovy:expecting '}', found '->' @ line 51, column 160.

我正在使用一个名为 Katalon 的测试工具,它支持 java/groovy。任何输入将不胜感激。谢谢

您引用的代码使用 Java lambda 语法(肯定不支持 Groovy 2.5)。您必须改为传递闭包。例如。转

(o1, o2) -> true

进入:

{a, b -> true}