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

相关推荐
TAN-90°-11 小时前
Java 6——成员变量初始值 object equals和== toString instanceof 参数传递问题
java·开发语言
中新传媒11 小时前
德宸堂心理双师同诊
java·前端·数据库
想唱rap11 小时前
NAT、内网穿透、代理服务
java·linux·网络·网络协议·udp·智能路由器
环流_11 小时前
nacos环境隔离
java·服务器·前端
芋只因11 小时前
天机学堂学习笔记
java·笔记·学习
摇滚侠11 小时前
Spring 面试题 真正的 offer 偏方 Java 基础 Java 高级
java·后端·spring
凯瑟琳.奥古斯特12 小时前
IP组播跨子网传输核心技术解析
java·开发语言·网络·网络协议·职场和发展
若水不如远方12 小时前
Java JSON 序列化原理与实战问题总结
java
hexu_blog12 小时前
前端vue后端java+springboot如何实现pdf,word,excel之间的相互转换
java·前端·vue.js·spring boot·文档转换
贺国亚12 小时前
synchronized- 并发
java·面试