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

相关推荐
YDS8293 分钟前
DeepSeek RAG&MCP + Agent智能体项目 —— 环境搭建和项目初始化
java·springboot·agent·rag·deepseek
ChoSeitaku4 分钟前
04.数组
java·开发语言·数据结构
float_com7 分钟前
【java进阶】------ 多线程【实际案例分析】
java
用户298698530147 分钟前
Java 中的 Word 变量管理:添加、统计、获取与删除
java·后端
郭龙_Jack12 分钟前
Java 17 到 Java 25:LTS 升级的全面收益与迁移指南
java·开发语言·python
要开心吖ZSH18 分钟前
Java AI Agent 开发中的 RAG 实现方案及小白入门指南
java·ai·agent·rag
掉鱼的猫18 分钟前
Java 流程编排新范式 Solon Flow:一个引擎,七种节点,覆盖规则/任务/工作流/AI 编排全场景
java·workflow
Aaa1111144330 分钟前
四类地址 逻辑地址 线性地址 虚拟地址 物理地址
java
小则又沐风a31 分钟前
深入了解进程概念 第二章
java·linux·服务器·前端
程序猿进阶33 分钟前
OpenClaw Mac 安装教程
java·macos·ai·架构·agent·openclaw