如何实现以下目标:
List<Data> streams = new ArrayList<>();
assertThat(streams).usingFieldByFieldElementComparatorIgnoringGivenFields("createdOn").containsOnly(data1, data2);
最佳答案
使用 ListAssert.usingElementComparatorIgnoringFields(String... fields)
与 ListAssert.usingFieldByFieldElementComparator()
做同样的事情,但允许忽略一些字段/属性:
所以你可以写:
List<Data> streams = new ArrayList<>();
//...
Assertions.assertThat(streams)
.usingElementComparatorIgnoringFields("createdOn")
.containsOnly(data1, data2);
关于java - 是否可以使用FieldByFieldElementComparator从assertJ中排除某些字段?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49447819/