博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mock InjectMocks ( @Mock 和 @InjectMocks )区别
阅读量:5026 次
发布时间:2019-06-12

本文共 554 字,大约阅读时间需要 1 分钟。

之前一直对这两个注解的区别不是很明白。

搜到过一篇博客园的文章举例说明了代码行为的区别。后来在stackoverflow上看到一个问答简单明了的解释了这两个注解在定义上的区别:

在此翻译记录一下:

//译文Begin:

@Mock: 创建一个Mock.

@InjectMocks: 创建一个实例,其余用@Mock(或@Spy)注解创建的mock将被注入到用该实例中。

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

 

[java] 
 
  1. @RunWith(MockitoJUnitRunner.class)  
  2. public class Test {  
  3.   
  4.     @InjectMocks  
  5.     private SomeHandler someHandler;  
  6.   
  7.     @Mock  
  8.     private OneDependency oneDependency; // 此mock将被注入到someHandler  
  9.   
  10.     // ...   
  11.   
  12. }  

 

// 译文end.

Credit to the questioner and answerer. 

转载于:https://www.cnblogs.com/ThinkVenus/p/9001215.html

你可能感兴趣的文章
python list和tuple
查看>>
基础薄弱的反思
查看>>
代码说明call和apply方法的区别 (咱们这方面讲解的少,这样的题有变式,需要举例讲解一下)...
查看>>
T-SQL 类型转换
查看>>
在eclipse中设计BPMN 2.0工作流定义的根本步骤
查看>>
Json对象与Json字符串互转(4种转换方式)
查看>>
PAT甲级1002 链表实现方法
查看>>
查看Linux信息
查看>>
Python中sys模块sys.argv取值并判断
查看>>
【详记MySql问题大全集】四、设置MySql大小写敏感(踩坑血泪史)
查看>>
并查集
查看>>
ubuntu 11.04下android开发环境的搭建!
查看>>
Bzoj 3343: 教主的魔法
查看>>
括号序列(栈)
查看>>
一件趣事
查看>>
DevExpress控件TExtLookupComboBox实现多列模糊匹配输入的方法
查看>>
atom 调用g++编译cpp文件
查看>>
H3C HDLC协议特点
查看>>
iptables 网址转译 (Network address translation,NAT)
查看>>
ios __block typeof 编译错误解决
查看>>