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

相关推荐
xuhaoyu_cpp_java13 小时前
Boyer-Moore 投票算法
java·经验分享·笔记·学习·算法
JavaEdge.13 小时前
Chrome加载已解压的扩展程序-清单文件缺失或不可读取 无法加载清单
java
iReachers13 小时前
HTML打包EXE配置管理教程:多项目打包设置一键保存、加载与切换
java·前端·javascript
XiYang-DING14 小时前
【Java】堆
java·开发语言
Lyyaoo.14 小时前
【Java基础面经】Java 反射机制
java·开发语言·python
YXWik614 小时前
Langchain4j(1)基础对话+连续对话+工具调用 + 流式响应+结构化 JSON 输出
java
967714 小时前
什么是 Thymeleaf?
java
Dream_sky分享14 小时前
找类中字段属性不同工具类
java
givemeacar14 小时前
SpringBoot3.3.0集成Knife4j4.5.0实战
java
十六年开源服务商14 小时前
家庭装修公司网站方案策划2026
java·开发语言