java mockito的用法_手把手教你 Mockito 的使用

本文介绍了 Java 开发中的 Mockito 测试框架,详细讲解了如何创建和配置 Mock 对象,以及为何使用 Mockito 进行单元测试。通过示例展示了创建 Mock 对象、配置行为、验证方法调用以及使用 spy() 部分模拟对象的步骤,帮助开发者更好地理解和运用 Mockito。
摘要由CSDN通过智能技术生成

什么是 Mockito

Mockito 是一个强大的用于 Java 开发的模拟测试框架, 通过 Mockito 我们可以创建和配置 Mock 对象, 进而简化有外部依赖的类的测试.

使用 Mockito 的大致流程如下:

创建外部依赖的 Mock 对象, 然后将此 Mock 对象注入到测试类中.

执行测试代码.

校验测试代码是否执行正确.

为什么使用 Mockito

我们已经知道了 Mockito 主要的功能就是创建 Mock 对象, 那么什么是 Mock 对象呢? 对 Mock 对象不是很了解的朋友, 可以参考这篇文章.

现在我们对 Mock 对象有了一定的了解了, 那么自然就会有人问了, 为什么要使用 Mock 对象? 使用它有什么好处呢?

下面我们以一个简单的例子来展示一下 Mock 对象到底有什么用.

假设我们正在编写一个银行的服务 BankService, 这个服务的依赖关系如下:

82eaaf5de0c5d94a7072edb983b6702b.png

当我们需要测试 BankService 服务时, 该真么办呢?

一种方法是构建真实的 BankDao, DB, AccountService 和 AuthService 实例, 然后注入到 BankService 中.

不用我说, 读者们也肯定明白, 这是一种既笨重又繁琐的方法, 完全不符合单元测试的精神. 那么还有一种更加优雅的方法吗? 自然是有的, 那就是我们今天的主角 Mock Object. 下面来看一下使用 Mock 对象后的框架图:

a35a7af6bfcab6ab71d1328cc8a123bc.png

我们看到, BankDao, AccountService 和 AuthService 都被我们使用了虚拟的对象(Mock 对象) 来替换了, 因此我们就可以对 BankService 进行测试, 而不需要关注它的复杂的依赖了.

Mockito 基本使用

为了简洁期间, 下面的代码都省略了静态导入 import static org.mockito.Mockito.*;

Maven 依赖

org.mockito

mockito-core

2.0.111-beta

创建 Mock 对象

@Test

public void createMockObject() {

// 使用 mock 静态方法创建

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值