@Mock与@InjectMocks的区别


@Mock: 创建一个Mock.

@InjectMocks: 创建一个实例,简单的说是这个Mock可以调用真实代码的方法,其余用@Mock(或@Spy)注解创建的mock将被注入到用该实例中。

注意:必须使用@RunWith(MockitoJUnitRunner.class) 或 Mockito.initMocks(this)进行mocks的初始化和注入。

复制代码
@RunWith(MockitoJUnitRunner.class)  
public class Test {  
  
    @InjectMocks  
    private SomeHandler someHandler;  
  
    @Mock  
    private OneDependency oneDependency; // 此mock将被注入到someHandler  

    // ...   
}  
复制代码


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM