Java开发学习(三十八)----SpringBoot整合junit
2023-03-14 09:43:40 时间
先来回顾下 Spring
整合 junit
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = SpringConfig.class)
public class UserServiceTest {
@Autowired
private BookService bookService;
@Test
public void testSave(){
bookService.save();
}
}
使用 @RunWith
注解指定运行器,使用 @ContextConfiguration
注解来指定配置类或者配置文件。而 SpringBoot
整合 junit
特别简单,分为以下三步完成
-
在测试类上添加
SpringBootTest
注解 -
使用
@Autowired
注入要测试的资源 -
定义测试方法进行测试
一、环境准备
创建一个名为 springboot_07_test
的 SpringBoot
工程,,参考Java开发学习(三十五)----SpringBoot快速入门及起步依赖解析,工程目录结构如下
在 com.itheima.service
下创建 BookService
接口,内容如下
public interface BookService {
public void save();
}
在 com.itheima.service.impl
包写创建一个 BookServiceImpl
类,使其实现 BookService
接口,内容如下
@Service
public class BookServiceImpl implements BookService {
@Override
public void save() {
System.out.println("book service is running ...");
}
}
二、编写测试类
在 test/java
下创建 com.itheima
包,在该包下创建测试类,将 BookService
注入到该测试类中
@SpringBootTest
class Springboot07TestApplicationTests {
@Autowired
private BookService bookService;
@Test
public void save() {
bookService.save();
}
}
注意:这里的引导类所在包必须是测试类所在包及其子包。
例如:
引导类所在包是
com.itheima
测试类所在包是
com.itheima
如果不满足这个要求的话,就需要在使用
@SpringBootTest
注解时,使用classes
属性指定引导类的字节码对象。如@SpringBootTest(classes = Springboot07TestApplication.class)
相关文章
- 你知道JDK、JRE与JVM的区别吗?我来告诉你
- Java那些事-聊聊那些易混淆的概念:OpenJDK/oracleJDK,Java EE/Jakarta EE
- 学习 Java 中最困难的部分以及如何克服它们
- 用于微服务和云原生开发的六大 Java 框架
- Spring事务失效场景汇总
- 继 SpringBoot 3.0,Elasticsearch8.0 官宣:拥抱 Java 17
- Get!Spring Data Jpa 中竟然有 10 种默认方法前缀
- Java 工程师更新技术的三条原则
- 再见,单身狗!Java 创建对象的六种方式,总有一种适合你......
- Urlcat:JavaScript的URL构建器库
- Java利用技巧-通过反射修改属性
- 不吹牛,吃下我这篇,Java面试第一关算是过了
- Spring认证指南:了解如何使用 Spring 执行表单验证
- 面向服务架构对Java应用程序有哪些好处?
- 9张图,32个案例带你轻松玩转Java Stream
- 安卓平板体验Java开发,还能白嫖一年阿里无影云,真香!
- Sentry 开发者贡献指南 - JavaScript SDK Minimal
- 一篇文章带你了解JavaScript window location
- Java 基础入门篇结构语句和 If 语句
- JVM 垃圾回收算法和 CMS 垃圾回收器