亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
基于JUnit使用Feed4JUnit實(shí)現(xiàn)數(shù)據(jù)與代碼分離
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/4/12 13:40:26 ] 推薦標(biāo)簽:

  圖 5. 數(shù)據(jù)表中的測試數(shù)據(jù)

  首先,創(chuàng)建測試類,添加 @Database 注釋并增加數(shù)據(jù)庫的連接信息,同時(shí)指定一個(gè)表示數(shù)據(jù)庫的 id,在測試方法的 @Source 中通過 id 進(jìn)行關(guān)聯(lián),并制定 selector 的語句進(jìn)行數(shù)據(jù)查詢,例如本例中的 selector = "select * from TEST",會從 TEST 表中取出全部數(shù)據(jù)用于測試,細(xì)節(jié)請參考以下代碼示例:

  清單 5 為在類上聲明 @Database。

package sample.test;

import static org.junit.Assert.assertEquals;

import org.databene.benerator.anno.Database;
import org.databene.benerator.anno.Source;
import org.databene.feed4junit.Feeder;
import org.junit.Test;
import org.junit.runner.RunWith;

import sample.code.UserAccess;

/*
 * Feed4JUnit - Get Data from Database, all test methods can use the database data
 */
@RunWith(Feeder.class)
@Database(
  id = "testdb",
  url = "jdbc:db2://localhost:50000/SAMPLE",
  driver = "com.ibm.db2.jcc.DB2Driver",
  user = "db2admin",
  password = "db2admin")
public class F4JfromDB {

 @Test
 @Source(id = "testdb", selector = "select * from TEST")
 public void testAccessCheck(String userName, String pw, String expected) {
  Boolean bSucess = UserAccess.accessCheck(userName.trim(), pw.trim());
  assertEquals(expected.trim(), bSucess.toString());

 }
}

  清單 6. 在方法上聲明 @Database
/*
 * Feed4JUnit - Get Data from Database,
 only the specified method can use the database data
 */

@RunWith(Feeder.class)
public class F4JfromDB_Method {
 @Test
 @Database(
   id = "testdb",
   url = "jdbc:db2://localhost:50000/SAMPLE",
   driver = "com.ibm.db2.jcc.DB2Driver",
   user = "db2admin",
   password = "db2admin")
 @Source(id = "testdb", selector = "select * from TEST")
 public void testAccessCheck(String userName, String pw, String expected) {
  Boolean bSucess = UserAccess.accessCheck(userName.trim(), pw.trim());
  assertEquals(expected.trim(), bSucess.toString());

 }
}

 

  測試運(yùn)行過程中,通過 url,driver 等信息建立數(shù)據(jù)連接,通過 selector 發(fā)出數(shù)據(jù)請求,后完成查詢并把數(shù)據(jù)傳遞給測試方法,數(shù)據(jù)在傳遞給方法的時(shí)候,會按數(shù)據(jù)表的列的順序與參數(shù)進(jìn)行匹配,運(yùn)行結(jié)果與圖 4 類似。

  自定義數(shù)據(jù)源

  除了 CSV,Excel 和數(shù)據(jù)庫的數(shù)據(jù)源外,F(xiàn)eed4JUnit 還提供自定義數(shù)據(jù)源,以滿足不同用戶的需求,用戶同樣可以通過封裝 JUnit 4 提供的參數(shù)化測試的方法來完成數(shù)據(jù)源自定義,所有這里作者不再詳述,用戶可以封裝并取得不同的數(shù)據(jù)源的數(shù)據(jù),傳遞給 Feed4JUnit 的相應(yīng)接口,來完成數(shù)據(jù)源的自定義。

  結(jié)束語

  本文通過對比介紹和簡單易懂的實(shí)例全面講解了 Feed4JUnit 對數(shù)據(jù)與代碼分離的測試支持。通過提供簡單的注釋,F(xiàn)eed4JUnit 使用戶能夠極其方便的實(shí)施數(shù)據(jù)與代碼分離的測試,極大地增強(qiáng)了 JUnit 測試框架的易用性。 相信您已經(jīng)在本文的敘述中看到它的優(yōu)點(diǎn)。同時(shí),本文所敘述的僅僅是 Feed4JUnit 提供的測試增強(qiáng)功能的一部分,F(xiàn)eed4JUnit 同時(shí)還提供了大量數(shù)據(jù)的隨機(jī)測試和等價(jià)類測試等眾多功能,如果您感興趣可以自行參考。

上一頁1234下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 欧美无遮挡国产欧美另类 | 亚洲欧美精品一中文字幕 | 美日韩一级 | 国产高清狼人香蕉在线观看 | 国产高清在线丝袜精品一区 | 亚洲韩国欧美一区二区三区 | 草草在线观看视频 | 国产精品福利无圣光一区二区 | 国产精品短视频免费观看 | 宅男在线 午夜影院 | 伊人性视频| 开心激情婷婷 | 亚洲人成网站在线观看90影院 | 欧美一级特黄一片免费 | 热热色视频 | 一二三四在线视频社区1 | 涩爱tv| 91最新视频在线观看 | 国产成人a v在线影院 | 天天看天天色 | 色久天 | 天天碰天天摸天天操 | 1769国产精品视频免费观看 | 日本欧美成人免费观看 | 国产三级国产精品国产普男人 | 国内精品视频在线播放 | 成年人视频在线免费 | 亚洲综合色一区 | 波多野结衣在线视频免费观看 | 一个人看www在线是免费 | 中国xxxx视频播放50 | 中文字幕欧美亚洲 | 中日韩免费视频 | 亚洲免费视频在线 | 黄色免费网站在线播放 | 久久久久18| 久久九九精品视频 | 综合网插菊花 | 在线成h人视频网站免费观看 | 成人午夜精品 | 日本久色|