我正在尝试将整数列表与 Hamcrest 匹配,在线查看了一些示例,但我遇到了运行时异常。
有人可以告诉我什么是正确的语法吗?
List<Integer> numbers = Arrays.asList( 1, 2, 3, 4, 5 );
assertThat((List<Object>) numbers, hasItem(hasProperty("value", is(1))));
assertThat((List<Object>) numbers, hasItem(hasProperty("value", is(2))));
assertThat((List<Object>) numbers, hasItem(hasProperty("value", is(3))));
assertThat((List<Object>) numbers, hasItem(hasProperty("value", is(4))));
assertThat((List<Object>) numbers, hasItem(hasProperty("value", is(5))));
谢谢
最佳答案
如果列表项的顺序无关紧要:
assertThat(numbers, hasItems(1, 2, 3, 4, 5));
如果是:
assertThat(numbers, is(equalTo(Arrays.asList(1, 2, 3, 4, 5))));
如果集合不应包含其他元素,则还要检查大小:
assertThat(numbers, hasSize(5));
关于java - 如何使用 Hamcrest 断言一个通用的整数列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13878477/