How to compare recursively ignoring given fields using assertJ?相关

为了解决该问题,我尝试为不希望比较器进行比较的字段装配比较器,并使其返回0。

assertThat(service.postComment(12,234,comment)).usingComparatorForFields((a,b)->0,"startDate").isEqualToComparingFieldByFieldRecursively(commentReturned);


但是,我仍然得到这个例外。

Path to difference:  <startDate>
- expected: <null>
- actual  : <2017-04-12 18:28:06.766>


附带说明-我不想比较startDate,因为它使用旧版java.util.Date检索当前日期,而旧版usingComparatorForFields也比较毫秒。

isEqualToComparingFieldByField如何工作。我什至使用isEqualToComparingFieldByFieldRecursively而不是进行了尝试,并且错误仍然存​​在(在相同情况下。对于需要递归比较的情况,此操作将失败。)

最佳答案

从我看来,这似乎是一个错误,您正在使用什么版本的AssertJ?

您是否可以使用简单的测试用例在assertj-core中创建问题以重现错误?

10-08 18:31