Mockito.when返回的list长度为0问题解决方法

今天玩Mockito.when遇见一个问题Mockito.when返回的list长度为0;上代码

java 复制代码
ArrayList<Org> childDepts = new ArrayList<>();
        Org org = new Org();
        org.setDeptId("1");
        org.setDeptName("1");
        childDepts.add(org);
Mockito.when(orgMapper.selectOrgList(org).thenReturn(childDepts);

业务实现代码

java 复制代码
List<Org> list= orgMapper.selectOrgList(queryChild);
//发现该代码返回的list长度为0

此时应该把我们的模拟代码修改成这样

java 复制代码
Mockito.when(orgMapper.selectOrgList(Mockito.any(Org.class))).thenReturn(childDepts);

分析原因

这是因为虽然你在单测中已经mock数据,但是mock数据的参数与在实际单测执行时大参数不是一个对象

相关推荐
无敌最俊朗@几秒前
STL-适配器(面试复习4)
java·面试·职场和发展
Han.miracle2 分钟前
《Spring MVC 响应机制综合实践:页面、数据、JSON 与响应配置》
java·spring·springboot
JHC00000015 分钟前
dy直播间评论保存插件
java·后端·python·spring cloud·信息可视化
SuperherRo18 分钟前
JAVA攻防-FastJson专题&面试不出网利用&BCEL字节码&C3P0二次&Impl链&延时判断
java·fastjson·不出网
TH_121 分钟前
18、删除WPSOfficeWord文档中的空白页
java
一雨方知深秋23 分钟前
数组定义及访问
java·数组·二维数组·for·length·定义访问
alanesnape25 分钟前
Java异常处理详解:Exception、ArithmeticException、FileNotFoundException
java·开发语言
while(1){yan}25 分钟前
数据链路层与物理层
java·网络·网络协议
野蛮人6号26 分钟前
黑马微服务 p23Docker02 docker的安装 如何正确安装docker,黑马微服务给的文档不行了,如何正确找到解决方法
java·docker·微服务·架构
武子康40 分钟前
Java-206 RabbitMQ 发布订阅(fanout)Java 实战:推/拉模式、ACK 与绑定排错全梳理
java·分布式·消息队列·rabbitmq·rocketmq·java-rabbitmq·mq