小编Ran*_*dom的帖子

assertj / Java 比较对象与列表字段忽略列表中元素的顺序

我希望在测试中比较 2 个对象列表(比如 Foo)。

List<Foo> fooA;
List<Foo> fooB;
Run Code Online (Sandbox Code Playgroud)

每个 Foo 条目都有一个 List 类型的字段(比如 Bar)

class Foo {
  private List<Bar> bars;
  ....
}

assertThat(fooA).isEqualTo(fooB);
Run Code Online (Sandbox Code Playgroud)

比较失败,因为条形的元素相同但顺序不同。

有没有办法比较它们而忽略顺序?

我不是在寻找以下选项。

assertThat(fooA).usingElementComparatorIgnoringFields("bars").isEqualTo(fooB);
Run Code Online (Sandbox Code Playgroud)

理想情况下,我想比较所有领域

java assertj

5
推荐指数
2
解决办法
6139
查看次数

标签 统计

assertj ×1

java ×1