Mockito入门

为什么需要Mock

测试驱动的开发(Test Driven Design, TDD)要求我们先写单元测试,再写实现代码。在写单元测试的过程中,我们往往会遇到要测试的类有很多依赖,这些依赖的类/对象/资源又有别的依赖,从而形成一个大的依赖树,要在单元测试的环境中完整地构建这样的依赖,是一件很困难的事情。如下:

此处输入图片的描述

为了测试类A,我们需要Mock B类和C类

此处输入图片的描述

如何Mock

对那些不容易构建的对象用一个虚拟对象来代替,使其在调试期间用来作为真实对象的替代品。

Mockito 介绍

Mockito is a mocking framework that tastes really good. It lets you write beautiful tests with clean & simple API. Mockito doesn’t give you hangover because the tests are very readable and they produce clean verification errors.

Mockito 优势

  1. Massive StackOverflow community voted Mockito the best mocking framework for java.
  2. Top 10 Java library across all libraries, not only the testing tools.
  3. Dan North, the originator of Behavior-Driven Development wrote this back in 2008:
    “We decided during the main conference that we should use JUnit 4 and Mockito because we think they are the future of TDD and mocking in Java”

使用场景

  1. 提前创建测试; TDD(测试驱动开发)
  2. 团队可以并行工作
  3. 你可以创建一个验证或者演示程序
  4. 为无法访问的资源编写测试
  5. Mock 可以交给用户
  6. 隔离系统

Mockito入门(具体摘录官网,列出比较常用的功能)

1.引用包
repositories { jcenter() }
dependencies { testCompile "org.mockito:mockito-core:1.+" }
2. verify interactions(检验交互)
import static org.mockito.Mockito.*;

// mock creation
List mockedList = mock(List.class);

// using mock object - it does not throw any "
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值