Junit5中如何判断嵌套对象是否相等

How to check the nested objects are equal or not in Junit5

当方法 returns 嵌套对象作为响应时,我们如何测试该方法? 我正在 java 8 和 junit5 中编写代码。 我有如下的 POJO

Class Phone{
  int id;
  String name;
}
Class Address{
String street;
String city;
}
Class Person {
 List<Phone> phones;
 Address address;
 String name;
}

我有如下方法

public Person getPerson(String name){
return persons.stream().filter(person -> person.getName().equals(name)).findAny().orElse(null);
}

这里,如何用junit5测试这个方法?

我建议您使用该方法的 assertEquals() method in JUnit. Note that, as you can see in the code,它使用 .equals() 方法。

因此,为了使其正常工作,您应该重写每个 类 对象中的 equals 方法 test/compare。