断言2列出相同的对象

时间:2013-02-27 11:22:24

标签: java unit-testing junit

我在Java中有测试项目。我有两个不同的列表与一些对象。我如何断言,这个列表包含相同的对象(不仅仅是等于)?

2 个答案:

答案 0 :(得分:1)

private boolean assertSameObjects(List<?> list1, List<?> list2) {
    assertEquals(list1.size(), list2.size());
    for (int i = 0; i < list1.size(); i++) {
        assertSame(list1.get(i), list2.get(i));
    }
}

答案 1 :(得分:0)

您可以这样做:

  • 迭代列表(迭代一个在另一个里面)。
  • 使用==比较条目,因为您想比较参考。
  • 如果在内部列表中找不到外部列表中的条目,则返回false
  • 如果外部列表的迭代完成,则返回true(外部列表中的所有对象引用也出现在内部列表中)