模拟具有模型类作为成员变量的spring模型类

时间:2016-11-19 19:49:46

标签: spring unit-testing mocking mockito springmockito

所以,我有一个类结构:

class ModelA  
{  
    ModelB b; // Also a model object  
    // Getters and setters  
}

class B()  
{  
    ModelC c; // Also a model object   
    ModelD d; // Also a model object  
} 

我想模拟所有这些并在ModelA对象列表中使用它们。这样做最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

有几种选择。

  1. 不要模拟,在测试设置中创建实际的模型对象
  2. Stub getters并返回mock子对象,例如:

    when(mockA.getB().thenReturn(mockB)); 
    when(mockB.getC()).thenReturn (mockC);