Mockito初体验

Feb 11, 2018 |

由于spring boot团队使用Mockito作为mock库,所以果断弃了Jmockit, 关于Jmockito的简单使用可以参考
Jmockit Mocking库初体验
本文由javacoder.cn整理,转载注明处理
待测对象和Jmockit Mocking库初体验中的一样

增加了print()方法便于测试spy partial mocking功能

测试类改动如下:

@InjectMocks 标识需要依赖注入的类
@Mock 标识需要生成mock的类或者接口
触发对注解的处理有三种方式
1)MockitoAnnotations.initMocks(this);
2)@Rule public MockitoRule rule = MockitoJUnit.rule().strictness(Strictness.STRICT_STUBS); 添加一个MethodRule
3)@RunWith(MockitoJUnitRunner.class) 使用Mockito特有的TestRunner
when(abc.intReturningMethod()).thenReturn(3); 表示录入一个期望(Expectation), 当调用intReturningMethod()时返回3
spy(cut);为了生成partial mocking, 录入期望(Expectation)的格式有点不一样。详细的见testSpy()中的doAnswer(Answer).when(_cut).print();语句

Posted in: java基础

Comments are closed.