@RunWith(SpringJUnit4ClassRunner.class)報(bào)錯(cuò)問(wèn)題及解決
@RunWith(SpringJUnit4ClassRunner.class)報(bào)錯(cuò)

1、查看Spring整合Junit測(cè)試時(shí)需要的jar包.是否加載進(jìn)來(lái),如果沒(méi)有需要重新加載

2、如果spring-test-3.2.0.RELEASE.jar已經(jīng)導(dǎo)入進(jìn)來(lái),還會(huì)出錯(cuò),看是否導(dǎo)入一下兩個(gè)類(lèi)包的接口

我的改完后已經(jīng)不再出現(xiàn)錯(cuò)誤
@RunWith和 SpringJUnit4ClassRunner-->junit4和Spring一起使用
今天在看Spring的Demo的時(shí)候,看到了如此單元測(cè)試的寫(xiě)法
如下:
@RunWIth(SpringJunit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext.xml"}
public ?class MyTest
{
@Test
public void hehe()
{
//.......
}
}這種寫(xiě)法是為了讓測(cè)試在Spring容器環(huán)境下執(zhí)行。
Spring的容器環(huán)境是啥呢?
比如常見(jiàn)的 Service Dao Action , 這些個(gè)東西,都在Spring容器里,junit需要將他們拿到,并且使用來(lái)測(cè)試。
好,筆者寫(xiě)一個(gè)十分簡(jiǎn)單的demo讓大家有個(gè)體會(huì)!
顯示demo的項(xiàng)目結(jié)構(gòu)

要寫(xiě)的東西就兩個(gè) applicationContext.xml 和MyTest.java
applicationContext.xml 中僅僅只定義了一個(gè)Date對(duì)象。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean name="date" class="java.util.Date"/>
</beans>
接下來(lái)是MyTest.java的內(nèi)容
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import javax.annotation.Resource;
import java.util.Date;
/**
* Created by HuLuo on 2016/8/19.
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext.xml"})
public class MyTest
{
@Resource
Date date;
@Test
public void hehe()
{
System.out.println(date.toLocaleString());
}
}
最后只需要運(yùn)行就可以了。

最后如圖所示,成功拿到了Spring容器里的Date對(duì)象。
諸如哪些 Action Service Dao ServiceImpl DaoImpl都是一個(gè)道理,可以通過(guò)這種方式拿到,然后進(jìn)行單元測(cè)試。。。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
hadoop的hdfs文件操作實(shí)現(xiàn)上傳文件到hdfs
這篇文章主要介紹了使用hadoop的API對(duì)HDFS上的文件訪(fǎng)問(wèn),其中包括上傳文件到HDFS上、從HDFS上下載文件和刪除HDFS上的文件,需要的朋友可以參考下2014-03-03
如何將JSON字符串?dāng)?shù)組轉(zhuǎn)對(duì)象集合
這篇文章主要介紹了如何將JSON字符串?dāng)?shù)組轉(zhuǎn)對(duì)象集合,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
springboot利用easypoi實(shí)現(xiàn)簡(jiǎn)單導(dǎo)出功能
本文介紹了如何使用Spring Boot和EasyPoi庫(kù)實(shí)現(xiàn)Excel文件的導(dǎo)出功能,EasyPoi是一個(gè)簡(jiǎn)化Excel和Word操作的工具,通過(guò)簡(jiǎn)單的配置和代碼,可以輕松地將Java對(duì)象導(dǎo)出為Excel文件,并且支持圖片導(dǎo)出等功能,感興趣的朋友一起看看吧2024-12-12
501 Command "HELO" requires an argument問(wèn)題的解決方法
換一個(gè)windows服務(wù)器,發(fā)現(xiàn)就沒(méi)這樣的問(wèn)題,僅在一臺(tái)Linux服務(wù)器上可以重現(xiàn),直觀感覺(jué)就是這臺(tái)Linux服務(wù)器某些配置有問(wèn)題2013-08-08
詳解在Spring中如何使用AspectJ來(lái)實(shí)現(xiàn)AOP
這篇文章主要介紹了詳解在Spring中如何使用AspectJ來(lái)實(shí)現(xiàn)AOP,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
SpringBoot如何根據(jù)目錄路徑生成接口的url路徑
這篇文章主要介紹了SpringBoot如何根據(jù)目錄路徑生成接口的url路徑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11

