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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spring junit 测试

發布時間:2025/7/14 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring junit 测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這兩天做Web開發,發現通過Spring進行對象管理之后,做測試變得復雜了。因為所有的Bean都需要在applicationContext.xml中加載好,之后再通過@Resource去取得。如果每次都要整個業務流做的差不多了再去測試,這樣效率很低,也很麻煩。如果單獨去寫一個測試用類,這樣太繁瑣了。于是想起Spring有一個測試框架,能夠整合JUnit進行測試,于是便拿出來試試~

1. 加入依賴包

  使用Spring的測試框架需要加入以下依賴包

  • JUnit 4 (官方下載:http://www.junit.org/)
  • Spring Test (Spring框架中的test包)
  • Spring 相關其他依賴包(不再贅述了,就是context等包)

2. 創建測試源目錄和包

  在此,推薦創建一個和src平級的源文件目錄,因為src內的類都是為日后產品準備的,而此處的類僅僅用于測試。而包的名稱可以和src中的目錄同名,這樣由于在test源目錄中,所以不會有沖突,而且名稱又一模一樣,更方便檢索。

3. 創建測試類

  創建一個測試用的類,推薦名稱為 “被測試類名稱 + Test”。

  測試類應該繼承與?AbstractJUnit4SpringContextTests?或?AbstractTransactionalJUnit4SpringContextTests

  對于 AbstractJUnit4springcontextTests 和 AbstractTransactionalJUnit4SpringContextTests 類的選擇:

  如果再你的測試類中,需要用到事務管理(比如要在測試結果出來之后回滾測試內容),就可以使用AbstractTransactionalJUnit4SpringTests類。事務管理的使用方法和正常使用Spring事務管理是一樣的。再此需要注意的是,如果想要使用聲明式事務管理,即使用AbstractTransactionalJUnitSpringContextTests類,請在applicationContext.xml文件中加入transactionManager bean:

<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>

  如果沒有添加上述bean,將會拋出NoSuchBeanDefinitionException,指明 No bean named 'transactionManager' is definded.

4. 配置測試類

  添加如下內容在class前,用于配置applicationContext.xml文件的位置。

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:applicationContext.xml")

5. 創建測試方法

  創建測試用方法,推薦名稱為 “被測方法名稱+ Test”。

  測試方法上方加入 @Test

6. 通過JUnit 4 執行

  右鍵方法名,選擇則“Run As”→“JUnit Test”即可

?

附錄1:整體測試類文件

/* @(#) UserDaoTest.java
*
*/
package com.phj.dao;

import javax.annotation.Resource;

import org.junit.Test;
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;

import com.phj.entity.User;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class UserDaoTest extends AbstractJUnit4SpringContextTests {

@Resource
private UserDaoInterface userDao;

@Test
public void saveTest() {

User user1 = new User();
user1.setUsername("tom");
user1.setPassword("123456");
user1.setNickName("tom");
user1.setEmail("tom@gmail.com");

User user2 = new User();
user2.setUsername("admin");
user2.setPassword("123456");
user2.setNickName("admin");
user2.setEmail("admin@admin.com");

User user3 = new User();
user3.setUsername("feihong");
user3.setPassword("123456");
user3.setNickName("phj");
user3.setEmail("test@gmail.com");

userDao.save(user1);
userDao.save(user2);
userDao.save(user3);
}
}

  OK,到此為止就可以使用Spring的測試框架了。

本文轉自:http://blog.csdn.net/feihong247/article/details/7828143

轉載于:https://www.cnblogs.com/nizuimeiabc1/archive/2013/06/07/4254236.html

總結

以上是生活随笔為你收集整理的spring junit 测试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。