Java 有没有办法用jUnitJupiter测试列表/集合的顺序?
我正在使用JunitJupiter进行单元测试。现在我不知道如何检查列表的顺序 代码:Java 有没有办法用jUnitJupiter测试列表/集合的顺序?,java,list,junit-jupiter,Java,List,Junit Jupiter,我正在使用JunitJupiter进行单元测试。现在我不知道如何检查列表的顺序 代码: @Test @DisplayName("Should be in ascending order") void sortAscending() { List<List<AccountlinevaluesEntity>> finalList = monthlySuSa; for (List<AccountlinevaluesEntity> list : fin
@Test
@DisplayName("Should be in ascending order")
void sortAscending() {
List<List<AccountlinevaluesEntity>> finalList = monthlySuSa;
for (List<AccountlinevaluesEntity> list : finalList) {
list.sort(Comparator.comparing(AccountlinevaluesEntity::getAccountNumber));
assert(list, ...........);
}
}
@测试
@DisplayName(“应按升序排列”)
无效排序设置(){
List finalList=每月美国;
对于(列表:finalList){
list.sort(Comparator.comparing(AccountlinevaluesEntity::getAccountNumber));
断言(列表,…);
}
}
我对单元测试还很陌生,我搜索了很多,但是我没有弄明白怎么做
那么,jUnitJupiter有什么方法可以做到这一点,还是有其他方法可以做到这一点 试试看
assertThat(list, Matchers.contains("your", "items", "in", "order")
来自JavaDoc
为{@link Iterable}创建一个匹配器,该匹配器在单次通过
检查的{@link Iterable}生成一系列项,每个项在逻辑上等于
指定项中的对应项。对于阳性匹配,检查的结果是不可接受的
长度必须与指定项目的数量相同
试一试
来自JavaDoc
为{@link Iterable}创建一个匹配器,该匹配器在单次通过
检查的{@link Iterable}生成一系列项,每个项在逻辑上等于
指定项中的对应项。对于阳性匹配,检查的结果是不可接受的
长度必须与指定项目的数量相同
这是一个完全无用的测试。您没有测试任何东西,因为排序是在您的测试方法中完成的,而不是在业务方法中完成的。因此,基本上您正在测试您是否正确编写了测试(以及
list.sort()
是否有效,我们知道它有效)。是的,没错。此方法在另一个方法中调用。我假设我应该在测试时检查我的每一个方法,所以我测试我的业务方法的输出是否正确排序?或者因为我们知道排序是正确的,所以没有必要测试排序的方式吗?如果有缺陷的排序可能导致生命或金钱损失,我会测试排序。否则,这只是一个格式问题,还有更重要的事情要测试。我推荐一些关于测试的理论教程,以便更好地理解a)需要测试什么,b)不需要测试什么,以及c)如何编写易于测试的代码。否则你会在不知道测试是否有用的情况下编写测试。谢谢:)这是一个完全无用的测试。您没有测试任何东西,因为排序是在您的测试方法中完成的,而不是在业务方法中完成的。因此,基本上您正在测试您是否正确编写了测试(以及list.sort()
是否有效,我们知道它有效)。是的,没错。此方法在另一个方法中调用。我假设我应该在测试时检查我的每一个方法,所以我测试我的业务方法的输出是否正确排序?或者因为我们知道排序是正确的,所以没有必要测试排序的方式吗?如果有缺陷的排序可能导致生命或金钱损失,我会测试排序。否则,这只是一个格式问题,还有更重要的事情要测试。我推荐一些关于测试的理论教程,以便更好地理解a)需要测试什么,b)不需要测试什么,以及c)如何编写易于测试的代码。否则你会在不知道测试是否有用的情况下编写测试。谢谢:)