在没有进行Mock,即没有when(...).thenReturn(...)或者doReturn(...).when(...)的情况下
@Mock
1、对该对象所有非私有方法的调用都没有调用真实方法
2、对该对象私有方法的调用无法进行模拟,会调用真实方法
@Spy
对该对象所有方法的调用都直接调用真实方法
日常测试中我们往往只需要Mock一个对象中的某些方法,而非全部,因此@Spy更便于我们做Mock测试
在没有进行Mock,即没有when(...).thenReturn(...)或者doReturn(...).when(...)的情况下
@Mock
1、对该对象所有非私有方法的调用都没有调用真实方法
2、对该对象私有方法的调用无法进行模拟,会调用真实方法
@Spy
对该对象所有方法的调用都直接调用真实方法
日常测试中我们往往只需要Mock一个对象中的某些方法,而非全部,因此@Spy更便于我们做Mock测试