Java 如何避免测试中的for循环

Java 如何避免测试中的for循环,java,unit-testing,Java,Unit Testing,我正在尝试测试一个SpringMVC控制器方法,该方法用于捕获一个人的详细信息 在UI上,通过下拉菜单选择角色并将其捕获到列表中。 在测试中,我想声明下拉列表中提交的每个角色都有一个对应的PersonRole 我编写了一个实用方法来断言值是否符合预期: public static void AssertPerson(Person person, Long accountId, String userName, String firstName, String lastName, List<

我正在尝试测试一个SpringMVC控制器方法,该方法用于捕获一个人的详细信息

在UI上,通过下拉菜单选择角色并将其捕获到列表中。 在测试中,我想声明下拉列表中提交的每个角色都有一个对应的PersonRole

我编写了一个实用方法来断言值是否符合预期:

 public static void AssertPerson(Person person, Long accountId, String userName, String firstName, String lastName, List<String> roles) {

    Assert.assertEquals(accountId, person.getAccount().getId());
    Assert.assertEquals(userName, person.getUsername());
    Assert.assertEquals(firstName, person.getFirstname());
    Assert.assertEquals(lastName, person.getSurname());

    for(PersonRole personRole : person.getRoleList()) {
      Assert.assertTrue(roles.contains(personRole.getName()))
    }       
}
publicstaticvoidassertperson(Person-Person、longcountid、stringusername、stringfirstname、stringlastname、列表角色){
Assert.assertEquals(accountId,person.getAccount().getId());
Assert.assertEquals(用户名,person.getUsername());
Assert.assertEquals(firstName,person.getFirstname());
Assert.assertEquals(lastName,person.getlasname());
for(PersonRole PersonRole:person.getRoleList()){
Assert.assertTrue(roles.contains(personRole.getName()))
}       
}

如何避免for循环出现这种情况?

Assert.assertTrue(roles.containsAll(person.getRoleList())的可能重复?这是一个我不知道的好功能。但它不完全适合我的需要,因为我正在比较一个列表和一个列表