Mockito MockBean不能mock MyBatis Mapper解决方法

在使用 MockBean 注解来模拟 MyBatis 接口(interface)的bean(例如 DAO)时遇到了问题,下面介绍一下不能mock MyBatis Mapper解决方法:

Mockito MockBean不能mock MyBatis Mapper解决方法

 

@Mapper
@Repository
public interface OrderDAO {
int insertOrder(@Param(“order“) Order order);
}

想在包含 OrderDAO 类型的字段的 OrderService 中执行集成测试并模拟此映射器。
集成测试用@ springboottest for integration test (webenvironment = springboottestWebEnvironment.RANDOM_PORT)注释并包含以下字段:

@MockBean
Private orderdao;

当运行这样的测试并查看对 OrderDAO 对象的引用是什么时,在集成测试中看到:

com.example.dao.OrderDAO$MockitoMock$1819884459

但在OrderService 类中,该字段是这样的:

com.sun.proxy.$Proxy179 (org.It’s not a good idea.binding.MapperProxy@37d9310e)

因此,对 Mockito.verify 的调用显然不起作用,因为我的模拟尚未注入到我的 OrderService 类中。

解决方案

必须将mapper的bean的名称添加到模拟 bean 注解中:

@MockBean(name = “orderDAO“)
Private orderdao;
以上就是关于“Mockito MockBean不能mock MyBatis Mapper解决方法”的相关解答,酷番云云南知名老牌云服务商,云服务器用户按需选择内存、数据盘、cup等配置大小,弹性灵活扩容,平滑升级。专业技术团队7×24小时服务支持,售后无忧!

高性价比云服务器选购地址:

https://www.kufanyun.com/server/buy.html

图片来源于AI模型,如侵权请联系管理员。作者:路飞,如若转载,请注明出处:https://www.kufanyun.com/ask/1299.html

(0)
上一篇 2021年12月9日 15:35
下一篇 2021年12月11日 15:53

相关推荐

  • 光纤存储交换机网口是什么?光纤存储交换机网口选购指南

    光纤存储交换机网口是企业级数据中心构建高可用、低延迟存储网络的核心枢纽,其性能直接决定了海量数据的读写效率与业务连续性,在 40G/100G 高速网络环境下,光纤存储交换机网口已不再是简单的物理连接点,而是决定存储架构(如全闪存阵列、分布式存储)能否发挥极致性能的关键瓶颈所在,选择具备高带宽、低延迟及智能流控能……

    2026年5月1日
    0413
  • ASP.NET开发不用服务器控件?不使用服务器控件的技术实现与优势分析?

    ASP.NET不用服务器控件开发:现代开发范式的实践与优势ASP.NET自2002年发布以来,经历了Web Forms、MVC、Web API等多个发展阶段,Web Forms凭借“所见即所得”的体验,曾成为企业级应用的主流选择,随着前端技术(如React、Vue)的成熟和业务复杂度的提升,传统服务器控件(如B……

    2026年1月2日
    01380
  • 百度智能云cdn与阿里云超级节点合作,有何差异化优势与挑战?

    随着互联网技术的飞速发展,云计算已成为企业数字化转型的重要基石,在众多云服务提供商中,百度智能云和阿里云凭借其强大的技术实力和丰富的产品线,成为了行业内的佼佼者,本文将围绕百度智能云CDN超级节点和阿里云CDN展开讨论,分析两者的特点与优势,百度智能云CDN超级节点节点布局百度智能云CDN超级节点遍布全球,覆盖……

    2025年12月12日
    01370
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 华为何型号手机搭载cdn一an00 CDN芯片?

    在当今互联网高速发展的时代,CDN(内容分发网络)已成为提升网站访问速度和用户体验的关键技术,华为作为全球领先的通信解决方案提供商,其CDN产品线丰富多样,满足不同用户的需求,一款名为“CDN一an00”的产品,凭借其卓越的性能和稳定性,在市场上获得了广泛认可,本文将详细介绍华为CDN一an00的型号特点、应用……

    2025年11月30日
    01350

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注