如何使用Spring-Test對Spring框架進(jìn)行單元測試
Spring-Test對Spring框架進(jìn)行單元測試
配置過程:
加載依賴
引入Maven依賴:
<!--spring單元測試依賴 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${springframework}</version> <scope>test</scope> </dependency>
編寫SpringTestBase基礎(chǔ)類,加載所需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框架的內(nèi)容進(jìn)行單元測試。
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測試數(shù)據(jù)
1、新建一個(gè)maven項(xiàng)目
2、pom.xml當(dāng)中添加依賴
<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當(dāng)中的測試包,而junit是單元測試包,結(jié)合起來使用。
添加一個(gè)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")); } }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章

Java的動態(tài)綁定與雙分派_動力節(jié)點(diǎn)Java學(xué)院整理

JavaWeb實(shí)現(xiàn)RSA+AES混合加密

Java7和Java8中的ConcurrentHashMap原理解析

Mybatis中l(wèi)ike搭配concat的寫法詳解

Java中讀寫鎖ReadWriteLock的原理與應(yīng)用詳解