如何使用Spring-Test对Spring框架进行单元测试
目录
- Spring-Test对Spring框架进行单元测试
- 加载依赖
- 编写SpringTestBase基础类,加载所需xml文件
- 编写单元测试类 示例
- Spring-Test测试数据
- 1、新建一个maven项目
- 2、pom.xml当中添加依赖
- 3、测试方法
Spring-Test对Spring框架进行单元测试
配置过程:
加载依赖
引入Maven依赖:
<!--spring单元测试依赖 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${springframework}</version> <scope>test</scope> </dependency>
编写SpringTestBase基础类,加载所需xml文件
import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @ContextConfiguration(locations = { "classpath:Application-Redis.xml" }) @RunWith(SpringJUnit4ClassRunner.class) public class SpringTestBase extends AbstractJUnit4SpringContextTests { }
将所需加载的xml文件指定为locations的value。
编写单元测试类 示例
直接继承SpringTestBase 就可以对Spring框架的内容进行单元测试。
import org.junit.Assert; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; public class TestRedisCacheDaoImpl extends SpringTestBase { @Autowired public RedisCacheDaoImpl redisCacheDaoImpl; @Test public void testPing() { boolean reslut = redisCacheDaoImpl.ping(); Assert.assertEquals(true, reslut); } }
Spring-Test测试数据
1、新建一个maven项目
2、pom.xml当中添加依赖
<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.2.5.RELEASE</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> </dependencies>
spring-test是Spring当中的测试包,而junit是单元测试包,结合起来使用。
添加一个bean,便于测试。
HelloService.java
@Service public class HelloService { public String hello(String name) { return "hello " + name; } }
添加配置文件扫描包:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> <!--将除了 Controller 之外的所有 Bean 注册到 Spring 容器中--> <context:component-scan base-package="org.youyuan" use-default-filters="true"> <context:exclude-filter type="annotation" expression="org.youyuan.controller"/> </context:component-scan> </beans>
3、测试方法
@ContextConfiguration("classpath:applicationContext.xml") @RunWith(SpringJUnit4ClassRunner.class) public class Test { @Autowired HelloService helloService; @org.junit.Test public void test(){ System.out.println(helloService.hello("youyuan")); } }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
赞 (0)