SpringBoot测试失败并报错: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration

2023-05-16

情况一:

该测试类在测试包test下的包名和类路径java下的包名不一致导致的,修改包名一致即可
在这里插入图片描述
由于包名自动生成的缘故导致这两个包名不一致,引发以下报错

java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=…) with your test

解决:修改包名一致,如图
在这里插入图片描述
问题解决,这是最好的解决方案

情况二

如果不想修改包名,那么需要在注解上加上@SpringBootTest(classes = xxx.class),来告诉springboot这是一个独立的测试类,注意xxx代表测试方法的类名,如图所示
在这里插入图片描述
但这里会产生额外的问题,因为此时springboot已经把该类当成一个独立的测试类了,这意味着这个测试类对应独立的IOC容器,所以此时我们无法在该测试类中注入springboot容器中的组件,案例如下,springboot项目的的路径是com.sobot.demo7(启动类就这这个包下),同理,测试类中com.sobot.demo7路径下测试类,可以正常装配userMapper组件

com.sobot.demo8路径下测试类,则根本无法找到userMapper这个组件
在这里插入图片描述
这种情况下测试类DemoApplicationTests中无法注入com.sobot.demo7路径下的组件userMapper

情况三

使用以下注解

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {JPAConfig.class})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SpringBoot测试失败并报错: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration 的相关文章

随机推荐

  • 利用VS Code docker 搭建容器开发环境(含WSL2)

    目录 基本软件安装VScode 插件安装连接WSL2及容器linux代码编译查看源码 xff0c 调试linux kernel总结补充学习busyboxvmware真香 这篇文章的灵感来源 感谢UP xff0c 我才有了WSL2 vscod
  • Linux用户和用户组管理

    此博客仅当学习笔记 xff0c 所有内容均参考C语言中文网 xff0c 望支持正版 xff0c 至C语言中文网查看详细内容 用户和用户组管理 xff0c 顾名思义就是添加用户和用户组 更改密码和设定权限等操作 可能有很多人觉得用户管理没有意
  • CCF-炉石传说

    这题原本想的比较复杂 xff0c 因为每次召唤随从或随从死亡时都要对右边的随从编号进行变动 xff0c 然后构建了链表的数据结构 xff0c 但是越写越复杂 xff0c 所以马上放弃这个思路 其实只要构建一个结构体 xff0c 结构体保存随
  • 宝塔面板开启数据库远程登陆权限

    宝塔面板开启数据库远程登陆权限 默认情况下宝塔面板创建的mysql数据库是本地登陆权限 xff0c 如果要远程管理操作需要单独开启权限 xff0c 具体操作如下 xff1a 1 登陆宝塔面板 xff0c 点击 安全 xff0c 在防火墙里面
  • 重参数化技巧:高斯分布采样

    1 高斯分布采样 我们现在得到了有样本X得到的分布X N mu sigma 2 xff0c 通过采样我们得到确定的隐变量向量 xff0c 从而作为解码器
  • 微擎系统安装流程

    虚拟主机安装微擎系统流程 推荐环境 linux 43 php5 6及以上 43 mysql5 6及以上 如果您购买的主机开通的是windows系统 请先更换成linux系统 如果是虚拟主机 在主机面板 php版本页面选择php7 0 从官网
  • 部署https后浏览器提示不安全,不出现绿色小锁?

    网站部署https后 浏览器提示不安全 不出现绿色小锁图标 访问网站后 按f12 浏览器提示 Mixed Content The page at 39 https www xxx com 39 39 was loaded over HTTP
  • linux系统变为只读出现提示Read-only file system的解决办法

    问题描述 linux系统变为只读 出现提示Read only file system 如图所示 问题原因 系统没有正常关机 导致虚拟磁盘出现文件系统错误 说明 此修复可能会导致个别文件及数据丢失 修复之前建议做好文件备份工作 解决方法 使用
  • 小程序接入微信视频号配置指南

    一 填写视频号品牌信息和视频号类目资质 xff08 需要在平台发布模式后再进行填写 xff09 如图 xff1a 二 如之前已是平台发布模式的 xff0c 还需要操作 更新授权 xff1b 如之前是自主发布的 xff0c 切换到平台发布模式
  • 微信小程序如何使用视频组件

    小程序中可以使用视频组件来播放自己想要展示的视频 xff0c 具体步骤如下 一 添加视频组件 1 点击 店铺 装修店铺 编辑 xff0c 进入小程序页面编辑 2 点击 组件库 视频 xff0c 页面会添加视频组件 xff0c 点击视频组件的
  • 小程序地理位置接口申请

    申请接口理由 xff1a wx chooseAddress 获取用户收货地址提交理由 xff1a 快速定位用户当前位置 xff0c 获取省市区等地址信息 xff0c 方便用户提交地址等信息 wx chooseLocation打开地图选择位置
  • 远程桌面时出现“身份验证错误,要求的函数不受支持”解决办法

    远程桌面时 出现身份验证错误 xff0c 要求的函数不受支持 的错误 xff0c 如图所示 xff1a 这是由于本地客户端或者服务器端一方更新了CVE 2018 0886 的 CredSSP 补丁 xff0c 而另外一方未安装更新的原因导致
  • macbook苹果电脑系统使用“终端”远程登录linux主机

    登录mac系统后 xff0c 依次打开顶部菜单 xff0c 前往 gt 应用程序 gt 实用工具 gt 终端 xff0c 如下图 xff1a 在打开的终端页面 xff0c 输入如下代码 xff1a ssh root 64 服务器IP地址 注
  • wdcp面板无法打开

    打开wdcp面板提示 34 无法连接mysql xff0c 请检查mysql是否已启动及用户密码是否设置正确 34 按http faq myhostadmin net faq listagent asp unid 61 417先ssh方式远
  • java主机禁止某些IP访问的方法

    JAVA主机用的是tomcat来处理数据 xff0c 所以不支持以前apche使用的 htacess方式 xff0c 一般有两种禁止方法可以选择 xff0c 一是在server xml文件里面禁止 xff0c 或者是修改程序代码 1 禁止I
  • 用K-Means和DBSCAN算法对西瓜数据集4.0进行聚类分析

    文章目录 数据集K MeansDBSCAN 用K Means和DBSCAN算法对西瓜数据集4 0进行聚类分析 数据集 density sugercontent span class token number 1 span span clas
  • FSS对象存储挂载到windows云服务器操作方法

    FSS对象存储可以挂载到云主机中用于存储视频 备份等不需要 经常读写的大文件 不适合存放数据库等对IO需求较高 经常读写的场景 1 远程登陆服务器 xff0c 打开控制面板 xff0c 然后点击 打开或关闭windows功能 windows
  • nohup: failed to run command java: No such file or directory解决

    程序里远程执行shell命令 xff08 nohup java jar xff09 的执行 xff0c 后台日志报错如下 xff1a nohup failed to run command 96 java 39 No such file o
  • 七大顶级编程学习网站

    1 B站 xff1a https www bilibili com 不要以为b站只有二次元和游戏 xff0c 很多高质量的 34 开源 34 教程应有尽有 xff0c 如果大家想学实践性较强的知识 xff0c 如java的juc xff0c
  • SpringBoot测试失败并报错: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration

    情况一 xff1a 该测试类在测试包test下的包名和类路径java下的包名不一致导致的 xff0c 修改包名一致即可 由于包名自动生成的缘故导致这两个包名不一致 xff0c 引发以下报错 java lang IllegalStateExc