java - 如何使assertequals方法指示列表中的所有错误?

标签 java junit

我有 2 个大小为 10 的链表 我想在 for 循环中使用 assertEquals(l1,l2); ,以便它 assertEquals l1、l2 中的每个节点。 如果相等则显示输出,如果不相等也显示输出,因此在任何一种情况下都显示输出,我的目的是让 assertEquals 指示所有不相等的点头或错误不要在第一个错误中停止

最佳答案

有两个选项。

首先,使用ErrorCollector。这将使您能够累积完整的错误列表,而不是在第一个错误上失败。

ErrorCollector

其次,使用 Hamcrest(内置于 junit 中)。

assertThat(list1, IsIterableContainingInOrder.containsInOrder(list2));

我倾向于尽可能使用 Hamcrest,因为它提供了有关失败的出色信息。

IsIterableContainingInOrder

关于java - 如何使assertequals方法指示列表中的所有错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20195629/

相关文章:

java - 解析Java字符串特殊字符错误

java - maven - 当单元测试时间太长时构建失败

linux - 设置 Window tester pro linux。 SWT错误

unit-testing - 如果在另一个线程中抛出异常,则单元测试失败

java - JUnit测试找不到我要测试的方法

java - 如何通过名称作为字符串访问对象的字段/方法

java - 如何读取 Eclipse 内存分析器的 "Merge Shortest Paths to GC Roots"屏幕?

java - 求正数列表的算术平均值

java - 阻止集成测试端口

java - 用于比较两个空对象的 junit 测试用例