文章目录
一.概述
1.什么是mock测试?
Mock 测试就是在测试过程中,对于某些不容易构造(如 HttpServletRequest 必须在Servlet 容器中才能构造出来)或者不容易获取的比较复杂的对象(如 JDBC 中的ResultSet 对象),用一个虚拟的对象(Mock 对象)来创建以便测试的测试方法。
2.为什么要有mock测试?
Mock是为了解决不同的单元之间由于耦合而难于开发、测试的问题。所以,Mock既能出现在单元测试中,也会出现在集成测试、系统测试过程中。
没用mock时 | 使用了mock |
---|---|
![]() |
![]() |
- 解释: 比如我们需要调用第三方http接口或者(数据库,硬件资源)时, 所调用的依赖异常导致流程中断我们可以使用mock约定好结果进行返回;
- 建议: mock接口只能主流程联调/ 异常返回测试,不要过分依赖mock接口进行测试。
3.mock的案例
package Mockito;
import org.junit.Assert;
im