背景:Java中目前主要的Mock测试工具有Mockito,JMock,EasyMock等等,很多Java Mock库如EasyMock或JMock都是expect-run-verify(期望-运行-测试)的方式,而Mockito则更简单:在执行后的互动中提问。使用Mockito主要记住,在执行前stub,而后在交互中验证即可
mock测试:就是在测试过程中,对于某些不容易构造或者 不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。这个虚拟的对象就是mock对象。mock对象就是真实对象在调试期间的代替品。
Requirements(需求)
No Dependency:每一个团队都希望自己开发的模块不依赖任何其它的外界条件,沟通成本仅限于双方接口定义。
Why(为什么要使用它?)
敏捷、轻量级
避免开发模块之间的耦合
简单 极为灵活
Principle
通过定义基于方法的模拟调用规则模拟任何代码的调用过程替代真实代码执行!
How(如何使用?)
场景
模拟RPC服务:目前存在很多应用通过RPC服务调用获取数据,应用前端的展现严重依赖后端服务的稳定性,在测试阶段可以选择通过模拟的方式直接模拟后端服务。
一、在项目中使用Maven引用mock
1)普通工程
http://www.cnblogs.com/lyy-2016/p/6155445.html
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId