浅谈SpringBoot在使用测试的时候是否需要@RunWith
作者:十八岁讨厌编程 发布时间:2022-12-19 04:14:14
标签:SpringBoot,@RunWith
我们在使用SpringBoot进行测试的时候一般是需要加两个注解:
@SpringBootTest
目的是加载ApplicationContext,启动spring容器。
@RunWith
是一个测试启动器,可以加载SpringBoot测试注解
让测试在Spring容器环境下执行。如测试类中无此注解,将导致service,dao等自动注入失败
但是我们有时候在使用的时候会发现不需要@RunWith注解,也可以运行测试类。在网上查了很多资料,有很多人说是IDEA编译器的原因,暂且不说他们说的是否正确,我发现的原因与他们并不一样。
我发现根本原因是:@Test的导包问题
我们在使用@Test实际上有两个导包选择:
如果我们使用的是org.junit.jupiter.api
包下的Test注解,那么我们是不需要@RunWith注解的。
而如果我们使用的是org.junit
包下的Test注解,那么就需要@RunWith注解,如果我们不使用的话会出现空指针的情况:
这个启动器使用SpringJUnit4ClassRunner或者SpringRunner都可以。
实际上SpringRunner继承了SpringJUnit4ClassRunner:
来源:https://blog.csdn.net/zyb18507175502/article/details/128647518


猜你喜欢
- MyBatis Example And与Or混合使用(条件1 and 条件2) or ( 条件3 and 条件4)  
- 源程序揭秘杨辉三角形性质: 每行数字左右对称,由 1 开始逐渐变大,然后变小,回到 1。 第 n 行的数字个数为 n 个。 第 n 行数字和
- 一、SpringBoot整合FastJson1.1、引入FastJson依赖包maven项目:<dependency> &nbs
- 下面是 Java 线程相关的热门面试题,你可以用它来好好准备面试。1) 什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程
- 前言作为Java开发工程师,相信大家对Spring种事务的使用并不陌生。但是你可能只是停留在基础的使用层面上,在遇到一些比较特殊的场景,事务
- 前几天在“Android绘图之渐隐动画”一文中通过画线实现了渐隐动画,但里面有个问题,画笔较粗(大于1)时线段之间会有裂隙,我又改进了一下。
- 实现GridView的横向滚动效果如下图:具体实现的代码•1. 主界面布局代码:activity_main.xml<?xml vers
- Struts提供了一个更简单的方式来处理未捕获的异常,并将用户重定向到一个专门的错误页面。您可以轻松地Struts配置到不同的异常有不同的错
- 简介本文主要讲解java 利用Selenium 操作浏览器网站时候,需要用的js的地方,代码该如何实现。调用JavaScriptwebdri
- RecyclerView 滑动时的优化处理,在滑动时停止加载图片,在滑动停止时开始加载图片,这里用了Glide.pause 和Glide.r
- 前言:如果简单地拍照片并非您应用的主要目标,那么您可能希望从相机应用中获取图片并对该图片执行一些操作。一、这就是第一种方法,比较简单,不用将
- 什么是线程池是一种基于池化思想管理线程的工具。池化技术:池化技术简单点来说,就是提前保存大量的资源,以备不时之需。比如我们的对象池,数据库连
- 本文实例为大家分享了javaOpenCV-4.0.0 实时人脸识别,供大家参考,具体内容如下package com.xu.opencv;im
- C# 中没有四舍五入函数,程序语言都没有四舍五入函数,因为四舍五入算法不科学,国际通行的是 Banker 舍入法Bankers roundi
- 如果对共享的可变数据的访问不能同步,其后果非常可怕,即使这个变量是原子可读写的。下面考虑一个线程同步方面的问题。对于线程同步,Java类库提
- 前言本文主要给大家介绍了关于Spring Boot应用事件监听的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧1.
- 1.项目介绍本项目旨在打造一个基于RBAC架构模式的通用的、并不复杂但易用的权限管理系统。通过本项目可以较好的理解权限系统的常见业务同时学习
- 本文实例为大家分享了Unity3D实现旋钮控制灯光效果的具体代码,供大家参考,具体内容如下前言实际上使用的是非常简单的方式,通过开启以及关闭
- Java中四种访问权限总结一、Java中有四种访问权限, 其中三种有访问权限修饰符,分别为private、public、prot
- 一、Elasticseach介绍1.简单介绍官网:开源搜索:Elasticsearch、ELK Stack 和 Kibana 的