java做简单的unitTest

一、单元测试准备
引入junit和mockito包
在这里插入图片描述
单元测试主要注解:
@SpringBoot
@RunWith 测试运行器
@Before 在测试方法之前运行
@Test 测试方法
@After 测试方法之后运行
@InjectMocks 待测试类
@Mock 测试中需要使用到的类(模拟类)
@Spy 测试中需要使用到的类(真实类)

单元测试中其实最头疼的是构建参数,在我们项目中用到的方法是将数据放在excel表中循环拿数据调用
在这里插入图片描述
在这里插入图片描述
在测试过程中我们将测试分为两部分,一部分为controller层测试,一部分为service层测试
二、controller层单元测试
使用工具:Junit4+MockMvc+Mockito
Mockito使用mock来模拟外部依赖对象,创建一个轻量级的、可控制的对象来代替测试中需要的真实对象,模拟真实对象的行为和功能。
测试controller需要在web环境中发起请求,可选用mockMvc模拟web环境进行controller层测试。mockMvc资料可自行百度
大家可以根据自己的业务将请求封装
开始测试步骤
2.1为需要测试的类和方法创建test方法
在这里插入图片描述
2.2初始化mockMvc
在这里插入图片描述
2.3构建请求
在这里插入图片描述
2.4执行测试
在这里插入图片描述
可根据业务决定是否mock数据,根据不同场景选择注入注解
在这里插入图片描述
2.5对结果进行断言
在这里插入图片描述
controller层只用对参数进行校验,如果只需要测试接口是否能跑通,可用mock数据测试,mock service层返回数据
在这里插入图片描述

三、service层单元测试
service层单元测试和controller层思路一致
根据不同场景选择不同注解,因为service层测试往往会涉及到数据库操作,所以建议service层测试使用mock注解,需要访问service调用其他类的真实方法是可使用@Spy注解,注意:mock注解用在没有实现的接口上没有效果,mock只能mock实现类。
service层测试时所有使用到的类都需要注入。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值