首页 > 解决方案 > 在 JUnit4 中断言两个列表相等

问题描述

我刚刚开始使用 JUnit4 编写单元测试。在实际的单元测试方法本身中,我创建了“预期”变量,并试图将它与我的代码进行比较。

我正在使用 JUnit4 中的 Assert.assertEquals 方法比较 ArrayLists,但是在预期的末尾似乎有一个空格?

Expected: "java.util.ArrayList<[data]> "
Actual:   "java.util.ArrayList<[data]>"

任何解释或帮助将不胜感激。TIA。

标签: javaintellij-ideajunitjunit4

解决方案


您可以使用 CollectionUtils.isEqualCollection(list1, list2);

或者

你也可以使用

Assert.assertArrayEquals(list1.toArray(new Integer[list1.size()]), list2.toArray(new Integer[list2.size()]));

对于上面的例子,我假设列表的类型是整数,但它适用于任何数据类型。

如果您仍然遇到任何问题,请告诉我。

祝你好运!


推荐阅读