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

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
JBuilder單元測試之JUnit框架
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/2/7 10:55:30 ] 推薦標(biāo)簽:

簡單的框架

  JUnit是由Erich Gamma和Kent Beck開發(fā)的開源測試框架,JBuilder集成了這個(gè)框架并對此做了擴(kuò)展。JUnit之所以流行并為廣大的開發(fā)人員所推崇,一是因?yàn)樗鼘?shí)戰(zhàn)性強(qiáng),功能強(qiáng)大,二是因?yàn)樗鼘?shí)在簡單。一個(gè)產(chǎn)品或框架要能有生命力,好都具備這樣的特點(diǎn)。

  簡單地講這個(gè)框架提供了許多斷言(assert)方法,允許你設(shè)置測試的規(guī)則,如:assertEquals()、assertNull()、assertNotSame()、assertTrue()等方法,一個(gè)測試用例包括了多個(gè)斷言,當(dāng)運(yùn)行測試用例后,JUnit運(yùn)行器會(huì)報(bào)告哪些斷言沒有通過,開發(fā)人員可順藤摸瓜搞個(gè)水落石出了。而傳統(tǒng)的測試方法需要將期望的結(jié)果用諸如System.out.println()等語句將過程信息打印到控制臺(tái)或日志中,由開發(fā)人員觀察輸出信息以判斷是否正確,現(xiàn)在這種"觀察"的工作由JUnit的那些assertXxx()方法自動(dòng)完成。

  JUnit的測試框架類結(jié)構(gòu)很簡單,主要由3個(gè)類組成。

  測試固件(Fixture)

  一個(gè)測試用例可以包含若干個(gè)testXxx()測試方法,測試用例測試一個(gè)或多個(gè)類API接口的正確性,當(dāng)然在調(diào)用類API時(shí),需要事先創(chuàng)建這個(gè)類的對象及一些關(guān)聯(lián)的對象,這組對象稱為測試固件(Fixture),相當(dāng)于測試用例的"工作對象"。

  我們在前面說過,一個(gè)測試用例類可以包含多個(gè)testXxx()方法,在運(yùn)行時(shí),每個(gè)測試方法都對應(yīng)一個(gè)測試用例類的實(shí)例。當(dāng)然,你可以在具體的testXxx()方法里聲明并實(shí)例化業(yè)務(wù)類的實(shí)例,在測試完成后再銷毀它們。但是,這么一來你要在每個(gè)testXxx()方法中都重復(fù)這些代碼,因?yàn)門estCase實(shí)例被運(yùn)行時(shí),依照以下步驟運(yùn)行:

  1.創(chuàng)建測試用例的實(shí)例。

  2.調(diào)用setUp()方法,執(zhí)行一些初始化工作。

  3.運(yùn)行testXxx()測試方法。

  4.調(diào)用tearDown()方法,執(zhí)行銷毀對象的工作。

  如果測試用例類中有多個(gè)testXxx()方法,且它們都需要使用到相同的一組對象,我們可以在setUp()中實(shí)例化這組對象,并在tearDown()中銷毀它們。要編寫測試固件,依照以下步驟進(jìn)行:

  1.創(chuàng)建TestCase類的子類。

  2.在子類中聲明若干個(gè)測試所用的對象。

  3.覆蓋setUp()方法,在方法中實(shí)例化這些對象。

  4.覆蓋tearDown()方法,釋放這些對象的資源。

  如下面即是一個(gè)簡單的測試固件:

  代碼清單 錯(cuò)誤!文檔中沒有指定樣式的文字。測試固件

  1. public class MoneyTest extends TestCase
  2. {
  3.  private Money f12CHF;//12瑞士法郎
  4.  private Money f14CHF; //14瑞士法郎
  5.  private Money f28USD; //28美國美元
  6.  protected void setUp() {
  7.   f12CHF= new Money(12, "CHF");
  8.   f14CHF= new Money(14, "CHF");
  9.   f28USD= new Money(28, "USD");
  10.  }
  11.  protected void tearDown(){}
  12. }


  第3~5行聲明了3個(gè)Money類對象(測試固件),在setUp()方法中實(shí)例化這3個(gè)對象(第7~9行),由于這些對象可以被垃圾進(jìn)行直接回收,所以在tearDown()中不做任何操作。

軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲精品欧美精品日韩精品 | 你懂的在线免费视频 | 黄网站在线播放 | 国产高清不卡视频在线播放 | 福利在线看 | 日本视频免费高清一本18 | 久久亚洲欧洲日产国码 | 韩国在线观看免费观看影院 | 性欧美.video.free| 日本片免费观看一区二区 | 天天射天天草 | 日本精品高清一区二区不卡 | 99久久九九| 写真片 理论 在线播放 | 日韩精品免费观看 | 在线你懂得| 国产福利午夜波多野结衣 | 第一福利网址导航 | 视频一区二区中文字幕 | 日韩一区二区视频在线观看 | 欧美成视频 | 国产激情视频一区二区三区 | www.丁香 | 99视频在线精品自拍 | 天天操夜夜夜 | 欧美日本在线三级视频 | 免费无遮挡嘿嘿嘿视频动态 | 日本漫画工囗全彩内番怀孕 | 午夜私人影院在线观看 视频 | 福利片在线观看免费高清 | 亚洲成人中文字幕 | 91短视频在线观看免费最新91 | 在线成人tv天堂中文字幕 | 亚洲午夜在线视频 | 羞羞视频免费网站在线看 | 精品久久香蕉国产线看观看亚洲 | 欧美午夜理伦三级理论三级 | 九九精品免视看国产成人 | 一级毛片儿 | 亚洲免费网站在线观看 | 91久久精品日日躁夜夜躁欧美 |