SpringBoot项目进行单元测试
目录
- `SpringBoot` 项目进行单元测试
- `Maven` 依赖
- 测试代码
- 测试代码一
- 测试代码二
- `junit 4` 和 `junit 5` 对比
SpringBoot
项目进行单元测试
版本说明:使用的 SpringBoot
版本是 2.0.9.RELEASE
,它默认集成的是 junit 4.12
Maven
依赖
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>
</dependency>
测试代码
测试代码一
@RunWith(value = SpringJUnit4ClassRunner.class)
@SpringBootTest
public class AppTest {@Autowiredprivate UserService userService;@Testpublic void shouldAnswerWithTrue() {List<AuthAndRoleDTO> authAndRoleDTOS = userService.selectAuthAndRole("Tom");authAndRoleDTOS.forEach(item -> {System.out.println(item.getAuthCode());System.out.println(item.getAuthName());});}
}
- 也可以使用注解
@RunWith(value = SpringRunner.class)
替代@RunWith(value = SpringJUnit4ClassRunner.class)
,二者继承关系如下
public final class SpringRunner extends SpringJUnit4ClassRunner {public SpringRunner(Class<?> clazz) throws InitializationError {super(clazz);}
}
测试代码二
@RunWith(SpringRunner.class)
@WebMvcTest
public class DeptController3Test {@Autowiredprivate DeptController deptController;@Testpublic void fun(){System.out.println(deptController);}
}
@SpringBootTest
:告诉SpringBoot
去寻找一个主配置类(例如带有@SpringBootApplication
的配置类),并使用它来启动Spring
应用程序上下文。该注解会试图去寻找所有可能存在的bean
@RunWith
:会为我们构造一个Servlet
容器运行环境,并在此环境下测试@WebMvcTest
:主要用于Controller
层的测试,只覆盖应用程序的Controller
层,HTTP
请求和响应是模拟出来的,不会创建真正的连接
junit 4
和 junit 5
对比
junit4 | junit5 | 特点 |
---|---|---|
@Test | @Test | 声明一个测试方法 |
@BeforeClass | @BeforeAll | 在当前类的所有测试方法之前执行。注解在 静态方法 上 |
@AfterClass | @AfterAll | 在当前类中的所有测试方法之后执行。注解在 静态方法 上 |
@Before | @BeforeEach | 在每个测试方法之前执行。注解在 非静态方法 上 |
@After | @AfterEach | 在每个测试方法之后执行。注解在 非静态方法 |
SpringBoot项目进行单元测试相关推荐
- 关于springboot项目(@SpringBootTest单元测试类)找不到配置文件问题
配置类需要以下注解 @Component: 说明该类为配置类 @ConfigurationProperties(prefix = "test"): 用于获取配置文件内容,也可以使用 ...
- springboot项目编写单元测试_SpringBoot项目单元测试(示例代码)
前一段时间,有朋友问到springboot运用如何进行单元测试,结合LZ公司的实际运用,这里给大家描述一下三种单元测试的方式. 1.约定 单元测试代码写在src/test/java目录下 单元测试类命 ...
- springboot项目打jar包跳过单元测试test
springboot项目打jar包跳过单元测试test 直接使用maven命令 mvn -B clean package -Dmaven.test.skip=true
- VS中怎样对C#项目进行单元测试
场景 SpringBoot+Junit在IDEA中实现查询数据库的单元测试: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/927 ...
- bean加载context idea_02-基于IDEA创建SpringBoot项目并进行入门分析
SpringBoot 项目创建 创建Module 基于IDEA创建项目Module,模块名为04-springboot-start,组id和包名为com.cy,如图所示: 填写module信息,如图所 ...
- java 单元测试_在springboot中写单元测试解决依赖注入和执行后事务回滚问题
往期文章 「Java并发编程」谈谈Java中的内存模型JMM 面试官:说说你知道多少种线程池拒绝策略 为什么不要在MySQL中使用UTF-8编码方式 前言 很多公司都有写单元测试的硬性要求,在提交代码 ...
- 使用IDEA创建SpringBoot项目
使用IDEA创建SpringBoot项目 新建项目 打开IDEA,创建新项目,选择Spring Initializr 输入Artifact 勾选Web 点击finish完成 删除多余 进入项目,可以将 ...
- springboot项目中mybatis实现数据的基本查询
SpringBoot项目中mybatis实现数据的基本查询 本章内容概述: mapper 查询 xml 文件基本使用 通过 mybatis 实现一条数据的查询 1 用户数据表 2 用户信息对应的实体类 ...
- springboot 事务嵌套问题_在springboot中写单元测试解决依赖注入和执行后事务回滚问题...
往期文章 「Java并发编程」谈谈Java中的内存模型JMM 面试官:说说你知道多少种线程池拒绝策略 为什么不要在MySQL中使用UTF-8编码方式 前言 很多公司都有写单元测试的硬性要求,在提交代码 ...
- boot sprint 项目结构_完美起航-【知识】SpringBoot项目结构目录
Spring boot 目录结构 一.主要目录 目录名称相对路径主要用途源码目录src\main\java存储源码 资源目录src\main\resources存储静态资源.动态页面.配置文件 测试目 ...
最新文章
- 为什么说Lucene不好
- 岩板铺地好吗_威廉顿岩板1200x2700x9mm,上墙铺地非常好看大气
- 微软雅黑的应用[补充中]
- 报表工具流行度以及对linux的支持情况调研
- Java网络编程从入门到精通(21):HTTP消息的格式
- c语言中有关main的问题,c语言小问题
- Linux入门学习(十一)
- java调python报错Cannot create PyString with non-byte value
- 第二轮冲刺-Runner站立会议06
- 老生常谈的一个问题,转行学习编程,是自学还是报班
- 重启VirtualBox里面的系统提示VT-x features locked or unavailable in MSR错误
- 如何使用 DefaultServlet DefaultServletHttpRequestHandler 来处理静态资源
- 靠播放业务吃不饱?音乐流媒体纷纷“加电商”卖周边
- 彻底讲明白浅拷贝与深拷贝
- BFS+模拟 ZOJ 3865 Superbot
- 淘宝装修:1920全屏海报(源代码免费下载)
- linux qq传文件怎么安装,在Ubuntu Linux下怎样安装QQ
- Python爬取码市项目
- Vue集成百度的Ueditor的前后端实现
- 获取手机存储卡路径的一种方法
热门文章
- StarUML Choice控件写上文字Text
- 算法:回溯十七 Combination Sum III挑选数组中规定个数元素的和为指定数
- 算法:Majority Element(求众数)
- 整数与IP地址间的转换
- docker制作python项目镜像
- MIMO-OTFS in High-Doppler Fading Channels:Signal Detection and Channel Estimation(4)
- 公式推导 11-20
- Db2干净卸载Linux,在Linux/Aix环境下完全卸载DB2
- 中调用view_在 View 上使用挂起函数
- 语言模型总结(待完善)