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

相关推荐
尼古拉斯·纯情暖男·天真·阿玮1 天前
[JavaEE初阶] 进程和线程的区别和联系
java·开发语言
苏小瀚1 天前
[算法]---分治-快排和归并
java·算法·leetcode
认真敲代码的小火龙1 天前
【JAVA项目】基于JAVA的宿舍管理系统
java·开发语言·课程设计
invicinble1 天前
关于maven的全域理解
java·spring boot·maven
黑马源码库miui520861 天前
JAVA成人用品商城系统源码微信小程序+h5+安卓+ios
android·java·微信小程序
杰克逊的日记1 天前
k8s是怎么管理GPU集群的
java·容器·kubernetes·gpu
山峰哥1 天前
现代 C++ 的炼金术:铸就高性能与高可维护性的工程实践
java·开发语言·前端·数据结构·c++
27669582921 天前
闪购商家端 mtgsig
java·python·c#·node·c·mtgsig·mtgsig1.2
JIngJaneIL1 天前
基于Java在线考试管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
雨落秋垣1 天前
SpringCache 缓存:注意事项、问题解决与优化策略
java·spring·缓存