Spring 整合 JUnit
时间:2022-07-26
本文章向大家介绍Spring 整合 JUnit,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.1 简介
JUnit 是一个 Java 语言的单元测试框架。它由 Kent Beck 和 Erich Gamma 建立,逐渐成为源于 Kent Beck 的 sUnit 的 xUnit 家族中最为成功的一个。 JUnit 有它自己的 JUnit 扩展生态圈。多数 Java 的开发环境都已经集成了JUnit 作为单元测试的工具。JUnit 是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit 测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit 是一套框架,继承 TestCase 类,就可以用 Junit 进行自动测试了。
1.2 Spring 整合 JUnit4
1.2.1 相关依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
1.2.2 测试类
/**
* Created with IntelliJ IDEA.
*
* @author Demo_Null
* @date 2020/8/24
* @description 测试类
*/
// 单元测试框架
@RunWith(value = SpringJUnit4ClassRunner.class)
// 加载配置文件
@ContextConfiguration(value = "classpath:application.xml")
public class RunDemo {
@Test
public void run() {
System.out.println("run...");
}
}
1.3 Spring 整合 JUnit5
1.3.1 相关依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.4.1</version>
</dependency>
1.3.2 测试类
/**
* Created with IntelliJ IDEA.
*
* @author Demo_Null
* @date 2020/8/24
* @description 测试类
*/
@ExtendWith(value = SpringExtension.class)
@ContextConfiguration(value = "classpath:application.xml")
public class RunDemo {
@Autowired
private MyTarget myTarget;
@Test
public void run() {
myTarget.run();
}
}
1.3.2 复合注解
/**
* Created with IntelliJ IDEA.
*
* @author Demo_Null
* @date 2020/8/24
* @description 测试类
*/
// 可用次复合注解代替 @ExtendWith 和 @ContextConfiguration 两个注解
@SpringJUnitConfig(locations = "classpath:application.xml")
public class RunDemo {
@Autowired
private MyTarget myTarget;
@Test
public void run() {
myTarget.run();
}
}
- Fontello:免费Web-font 图标大集合(font-face 图标集)
- 通过 wp-config.php 禁止安装、升级或编辑WordPress 主题与插件
- 利用VS2005中的Code Snippets提高开发效率
- 用schemaSpy制作数据库文档
- WordPress 投票插件Post Ratings,可在谷歌搜索显示星级投票(附中文包下载)
- Spark学习笔记——共享变量
- 如何升级Mono
- 使用信息架构视图访问数据库元数据
- Java 基础标识符
- 在Windows上玩转Mono/Linux
- Active Record和Domain Object + Dao
- 别再设计易碎的Web API
- 开放源代码与.NET应用程序平台的性能测试
- Mono Libgdiplus库
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 【kafka源码】kafka内部的一些术语
- TKE使用自建NFS持久化存储
- 网站 SSL 检测 PCI DSS 不合规解决办法
- leetcode链表之分割链表
- 五分钟带你读懂 TCP全连接队列(图文并茂)
- Python基础
- JDK15正式发布,新增功能预览!
- Magicodes.IE 2.3重磅发布——.NET Core开源导入导出库
- 安防视频监控系统视频上云解决方案EasyCVR音频基础知识介绍
- 安防视频监控系统视频上云解决方案EasyCVR语音转发功能音频数据打包发送流程介绍
- 视频上云/安防视频融合平台/安防视频云服务EasyCVR通道播放界面出现样式重叠如何修正?
- 什么是MySQL数据库?看这一篇干货文章就够了!
- 折线图
- 雷达图
- Cypress系列(49)- invoke() 命令详解