日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java Web(5) Spring 下使用Junit4 单元测试

發(fā)布時(shí)間:2025/3/19 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java Web(5) Spring 下使用Junit4 单元测试 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

1. 如何在不啟動(dòng)Tomcat服務(wù)器的情況下對,Dao這些不依賴使用Servlet API的類來進(jìn)行單元測試呢?

????其實(shí)在Spring框架體系中,已經(jīng)有一套自己的測試代碼,其中就是依賴使用Junit來進(jìn)行測試 ,不需要啟動(dòng)Tomcat就可以對Dao來進(jìn)行測試。

????至于什么是Junit呢,參見Junit。

2. 首先的第一步,就是添加依賴的類庫,這里就需要再一次使用到神器Maven了,在pom.xml中添加

<dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>4.2.2.RELEASE</version> </dependency> <dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.9</version><scope>test</scope> </dependency>

????在這里,需要注意一下,spring版本與Junit版本的兼容問題。前面我使用Spring是4.2.2的,在官方的文檔中講到

NOTE: As of Spring Framework 4.1, this class requires JUnit 4.9 or higher.

????所以我使用了Junit 4.9 以上,否則運(yùn)行JunitCase會(huì)拋異常

3. 編寫TestCase

package?test;import?java.util.Iterator; import?java.util.List; import?org.junit.Test; import?org.springframework.beans.factory.annotation.Autowired; import?cn.tian.dao.*; import?cn.tian.vo.*; import?org.junit.runner.RunWith; import?org.springframework.test.context.ContextConfiguration; import?org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import?org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import?org.springframework.transaction.annotation.Transactional; //首先指定Junit的Runner @RunWith(SpringJUnit4ClassRunner.class) //指明配置文件所在 @ContextConfiguration(locations="classpath:applicationContext.xml") //指定事務(wù)管理器 @Transactional(transactionManager="transactionManager") //繼承AbstractTransactionalJUnit4SpringContextTests來獲取Spring上下文環(huán)境來獲取Bean public?class?UserDaoTest?extends?AbstractTransactionalJUnit4SpringContextTests{//spring依賴注入@Autowiredprivate?UserDao?dao;//JUnit注解?,表明這是一個(gè)需要運(yùn)行的測試方法@Testpublic?void?test(){User?admin?=?new?User();admin.setName("管理員"); dao.insert(user); } }

????就這樣簡單,就可以輕松布置JUnit的測試環(huán)境了

?

4. 補(bǔ)充:如果在Web項(xiàng)目中配置有bean 的scope為“application”的時(shí)候,運(yùn)行測試會(huì)顯示Spring Context初始化錯(cuò)誤。需要在添加一個(gè)注解@WebAppConfiguration,把WebApplicationContext加載上來,就解決了

?

轉(zhuǎn)載于:https://my.oschina.net/asd1614/blog/530528

總結(jié)

以上是生活随笔為你收集整理的Java Web(5) Spring 下使用Junit4 单元测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。