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作为微软推出的主流Web开发框架,在连接数据库时若遇到“连不上数据库”的问题,是开发者常遇到的挑战之一,这类问题不仅影响应用部署与运行,还可能导致业务数据无法访问,因此深入理解其根本原因并掌握排查方法至关重要,本文将从常见问题、核心原因分析、解决方案及实践案例等维度,系统阐述ASP.NET连接数据……

    2026年1月26日
    02980
  • 光网络终端怎么组装,光网络终端组装教程

    光网络终端组装的核心在于物理链路精准对接与配置逻辑闭环,任何环节的物理接触不良或参数配置错误都将直接导致业务中断,成功的组装并非简单的插线操作,而是基于“光路物理层稳定”与“数据逻辑层通断”的双重验证过程,需严格遵循从光路接入、设备固定、网线连接至参数配置的标准化流程,确保在最小化物理故障风险的前提下,实现业务……

    2026年4月30日
    02635
    • 服务器间歇性无响应是什么原因?如何排查解决?

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

      2026年1月10日
      020
  • 立思辰gb3731cdn系统如何恢复至初始默认设置?详细步骤解析

    立思辰GB3731CDN如何恢复默认设置:立思辰GB3731CDN是一款高性能、高可靠性的网络加速设备,广泛应用于企业、教育、政府等领域,在使用过程中,可能会遇到需要恢复默认设置的情况,本文将详细介绍如何恢复立思辰GB3731CDN的默认设置,恢复默认设置步骤断电重启请确保立思辰GB3731CDN已经断电,按下……

    2025年12月1日
    05920
  • ASP.NET中数据库操作入门,初学者如何实现数据连接与基础查询?

    在ASP.NET应用开发中,数据库操作是核心环节之一,它负责数据的持久化、检索与更新,掌握ASP.NET中数据库操作的基础原理与实现方式,对于构建稳定、高效的应用至关重要,本文将系统介绍ASP.NET中数据库操作的基础知识,涵盖连接管理、核心组件、CRUD操作、事务处理等内容,并结合酷番云云数据库服务的实践经验……

    2026年1月9日
    02910

发表回复

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