Spring-Test对Spring框架进行单元测试
配置过程:
加载依赖
引入Maven依赖:
1
2
3
4
5
6
7
|
<!--spring单元测试依赖 -->
< dependency >
< groupId >org.springframework</ groupId >
< artifactId >spring-test</ artifactId >
< version >${springframework}</ version >
< scope >test</ scope >
</ dependency >
|
编写SpringTestBase基础类,加载所需xml文件
1
2
3
4
5
6
7
8
|
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框架的内容进行单元测试。
1
2
3
4
5
6
7
8
9
10
11
12
|
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当中添加依赖
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
< 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
1
2
3
4
5
6
|
@Service
public class HelloService {
public String hello(String name) {
return "hello " + name;
}
}
|
添加配置文件扫描包:
1
2
3
4
5
6
7
8
9
10
|
<? 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、测试方法
1
2
3
4
5
6
7
8
9
10
|
@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" ));
}
}
|
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/u011389474/article/details/72303118