SpringBoot单元测试中有了@Test注解但是idea没有执行的按钮

打算给自己的demo弄一个单元测试碰到的一些坑,我从其他项目复制一份单元测试发现左侧没有执行按钮

我是先创建的springboot2.6版本的

导入之后test报错,直接改了之后并没有加上public

org.junit.jupiter.api.Test和org.junit.Test就是这两个包出现了问题
查阅了下资料,原理是:

spring boot 2.2之前使用的是 Junit4:org.junit.Test

spring boot 2.2之后使用的是 Junit5:org.junit.jupiter.api.Test

看了一下项目springboot版本果然不一样

解决办法:如果你用的版本是spring boot 2.2之前的版本你给他加上public就行,所有测试方法也要加

扩展:

@RunWith(SpringRunner.class)的作用

注解的意义在于Test测试类要使用注入的类,比如@Autowired注入的类有了@RunWith(SpringRunner.class)这些类才能实例化到spring容器中,自动注入才能生效,不然直接一个NullPointerExecption

@SpringBootTest(classes = SpringBootShardingsphereDemoApplication.class)
该注解是用到类名上,表示自动启动加载类或指定某个或多个加载启动类,默认会加载当前module下的启动类

posted @ 2022-06-03 21:26  我是个机器人  阅读(1061)  评论(0编辑  收藏  举报