SpringBootTest--踩坑错误的解决
作者:莫失莫忘hh
这篇文章主要介绍了SpringBootTest--踩坑错误的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
SpringBootTest 踩坑
Spring boot降低了我们对spring开发的难度
采用了大量在的自动配置,我们只需要进行简单的基本配置,就能快速开发一个spring应用。同样spring对于单元测试也有场景启动器----spring-boot-starter-test,可以让我们在,spring环境下进行测试。
昨天测试的时候,容器都无法启动,检查之后发现了原因,也是因为自己粗心大意。
@RunWith(value = SpringRunner.class) //@SpringBootTest(classes = SearchApplication9007Test.class) //错误写法 ,这个class应该填写的是你的主启动类, //而不是你的测试类。以为之前用的稍微高点的版本,可以省略这个括 //号内的配置。但是这个版本需要配置 @SpringBootTest(classes = SearchApplication9007.class) //正确写法 ,应该填入主配置类 public class SearchApplication9007Test{ @Autowired private ElasticsearchTemplate elasticsearchTemplate; /**
SpringBootTest的一个小坑注意点
springboot测试时Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
两种处理方法
1、我当时运行SpringBoot测试类的时候踩这个坑
当时的解决办法就是,原本的包名为test现在改为panfeng就行了。
这里的主配置类也就是`PanfengUploadApplication`所在包是 java 下的 `panfeng`
所以测试类的`FastDFSTest`也要在 java 下的 `panfeng`包
2、解决方法
那是因为@SpringBootTest中缺少classes属性配置,加上启动类的class即可,如下:
@RunWith(SpringRunner.class) @SpringBootTest(classes = AdminApplication.class)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。