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数据的参数与在实际单测执行时大参数不是一个对象

相关推荐
星如雨グッ!(๑•̀ㅂ•́)و✧5 分钟前
WebClient请求样例
java
两年半的个人练习生^_^7 分钟前
dynamic-datasource多数据源使用和源码讲解
java·开发语言·数据库·mybatis
无籽西瓜a9 分钟前
【西瓜带你学设计模式 | 第一期-单例模式】单例模式——定义、实现方式、优缺点与适用场景以及注意事项
java·后端·单例模式·设计模式
空空潍12 分钟前
Spring AI 实战系列(二):ChatClient封装,告别大模型开发样板代码
java·人工智能·spring
imuliuliang13 分钟前
Spring Boot(快速上手)
java·spring boot·后端
va学弟17 分钟前
Java 网络通信编程(8):完善 UDP 协议
java·开发语言·udp
夫礼者21 分钟前
【极简监控】打破中间件黑盒:用 Micrometer 打造“SLF4J式”的降维打击Metrics监控体系
java·中间件·监控·metrics·micrometer
yashuk22 分钟前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端
daidaidaiyu9 小时前
JMS, ActiveMQ 学习一则
java
weixin_704266059 小时前
SpringBoot全注解开发指南
java·spring boot·mybatis