基于java的Mock利器-Mockito

Mockito是一个广泛使用的Java单元测试Mock框架,以其简洁的语法和丰富的文档深受开发者喜爱。通过Maven或Gradle轻松引入,Mockito支持验证对象交互、设置测试桩、参数匹配及执行顺序验证。它还能监控真实对象,实现复杂场景的测试桩。对于需要不同返回值或异常的同一函数,Mockito也能轻松处理。
摘要由CSDN通过智能技术生成

1.认识Mockito

  • Mockito是java单元测试中使用率最高的Mock框架之一。
  • 特点:简明的语法和完整的文档,Mockito支持永Maven和Gradle来进行依赖引入和管理。

2.Mockito Maven引入:

<dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <version>3.8.0</version>
            <scope>test</scope>
</dependency

3.认识Mockito

Mockito可以验证某些行为:一旦mock对象被创建了,mock对象会记住所有的交互。
在这里插入图片描述

4.Mockito可以做一些测试桩(Stub)

默认情况下,所以的函数都有返回值。mock函数默认返回值是Null,一个空的集合或者一个被对象类型包装的内置类型,例如0,false对应的对象类型为Integer,boolean,测试桩函数可以被覆写,例如常见的测试桩可以用于初始化夹具,但是测试函数能够覆写它,一旦测试桩被调用,该函数将会一致返回。
在这里插入图片描述

5.Mockito以自然的JAVA风格来验证参数

为了合理的使用复杂的参数匹配,使用equals()与anyX()的匹配器会使得测试代码更简洁,简单。
在这里插入图片描述

6.Mockito可以验证执行的顺序

验证执行顺序是非常灵活的,不需要一个一个的验证所有交互,只需要验证感兴趣的对象即可。另外,可以仅通过哪些需要验证顺序的mock对象来创建InOrder对象。
在这里插入图片描述

7.Mockito可以为连续的调用做测试桩

  • 有时我们需要为同一个函数调用的不同的返回值或异常做测试桩
  • 事例
    在这里插入图片描述

8.Mocktio可以监控真实对象

可以为真实对象创建一个监控(spy)对象。当你使用这个spy对象也会调用,除非它的函数被stub了,尽量少使用spy对象,使用时也需要小心形式,例如spy对象可以用来处理遗留代码,监控一个真实的对象跟mock对象概念结合起来。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值