这是代码:
public class Customer
{
@Autowired
private Person person;
//some business logic using person object
}
现在我需要为 Customer 类编写 jUnit 测试用例,该怎么做? 我是否应该使用 Mockito 来模拟 person 对象,然后执行业务逻辑,如果是,如何将模拟的 person 对象设置为 Customer 的属性,而不需要任何 setter/getter?
谢谢!
最佳答案
我觉得你想太多了。
我不会模拟业务对象模型;当您不需要集成测试时,这适用于基于接口(interface)的类。
我不会将 Person
注入(inject)到 JUnit 测试中;我只需调用“new
”,实例化适合我的测试的内容,然后继续使用它。
如果您的客户必须拥有 Person 的实例,我建议使用构造函数注入(inject)。如果必须的话,您可以通过这种方式传递一个模拟 Person。
关于java - 使用 Autowiring 的 Spring bean 的 JUnit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5901615/