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

相关推荐
sunshine22 girl9 小时前
Java学习五 面向对象高级5 内部类1
java·学习
用户13051807121511 小时前
JDBC学习DAY2:从Statement到PreparedStatement
java
蛋蛋的就会顺顺的11 小时前
hot100——矩阵
java·数据结构·算法·leetcode·力扣
周杰偷奶茶11 小时前
【Java】数组的定义和使用(附管理系统实战案例)
java·开发语言
橙子圆12312 小时前
JUC之集合类不安全
java·开发语言
谢亮_vipxieliang13 小时前
Stream API 不是银弹:常见坑与性能建议
java·开发语言
源码宝13 小时前
Web‑PACS 云影像源码|Java+Vue3 医院影像管理系统完整方案
java·源码·影像pacs·成品源码·医院影像系统
ShineWinsu13 小时前
对于Redis:string类型的解析
java·c++·redis·分布式·缓存·面试·string
三84415 小时前
Fastjson 漏洞 · 02 · autoType 机制与 checkAutoType
java·fastjson