欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

SpringBoot项目中@Test不出现可点击运行的按钮问题

时间:2022-03-26 09:01:50|栏目:JAVA代码|点击:

@Test不出现可点击运行的按钮

SpringBoot项目的test包里用来做测试的*****Test类里面的@Test单元测试不起作用,即左边没有可以运行的按钮,如下图-1所示:

@Test不起效

图-1

这时我们看到@SpringBootTest注解也有,@Test注解也有,但是左边没有可运行的按钮,原因是这个类和类里的方法都不是公开(public)的,需要在class前加上public,也需要在类里的方法前面也加上,比如这个要在contextLoads方法的void前面也加上public,都加上后就能出现想要的效果了,如下图-2所示:

@Test注解起效

此时,左边就出现了能够点击运行的三角按钮,就可以用这个类写方法测试了。

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

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

 我去我另外一个项目左看右看了老半天没找发现问题,然后我就想这个会不会是因为导入的包不一样所以出现了问题

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下的启动类

上一篇:Java之Springcloud Feign组件详解

栏    目:JAVA代码

下一篇:springcloud gateway自定义断言规则详解,以后缀结尾进行路由

本文标题:SpringBoot项目中@Test不出现可点击运行的按钮问题

本文地址:http://www.codeinn.net/misctech/197318.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有