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

相关推荐

  • asp.net中数据库连接的实现方法与最佳实践有哪些疑问?

    在ASP.NET中,数据库连接是应用程序与数据库进行交互的基础,一个高效、稳定的数据库连接机制对于保证应用程序的性能和可靠性至关重要,以下将详细介绍ASP.NET中数据库连接的配置、使用方法以及注意事项,数据库连接配置连接字符串连接字符串是用于建立数据库连接的关键信息,通常包含以下要素:数据库类型(如SQL S……

    2025年12月13日
    01240
  • 止回阀h41h一16cDN40型号有何特点与适用范围?

    止回阀H41H-16C DN40:详细介绍与应用产品概述止回阀H41H-16C DN40是一种常见的流体控制阀门,主要用于防止流体倒流,确保系统正常运行,该产品广泛应用于石油、化工、水处理、电力等行业,产品特点结构紧凑:止回阀H41H-16C DN40采用整体铸造结构,设计紧凑,安装方便,密封性能优良:阀体与阀……

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

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

      2026年1月10日
      020
  • CDN服务器宕机背后真相,究竟为何宕机?如何有效解决?

    CDN服务器宕机原因分析分发网络)服务器宕机是指CDN服务无法正常工作,导致用户无法访问网站或应用的情况,以下是CDN服务器宕机的一些常见原因:硬件故障硬件故障是导致CDN服务器宕机的主要原因之一,以下是一些常见的硬件故障:硬盘损坏:硬盘损坏会导致数据丢失,服务器无法正常运行,内存故障:内存故障会导致服务器性能……

    2025年11月27日
    01160
  • 如何掌握aspdim用法?详解其语法规则与实例应用

    {aspdim用法}:ASP.NET Core依赖注入维度管理详解与实践ASPDim的核心概念与原理ASPDim是ASP.NET Core依赖注入(Dependency Injection, DI)体系中的关键维度管理机制,用于为服务定义维度标识符(Dimension Identifier),实现服务实例的精细……

    2026年2月3日
    0710

发表回复

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