您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
Junit單元測試入門簡介
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2014/3/26 14:07:34 ] 推薦標(biāo)簽:白盒測試 單元測試 junit

1、幾個(gè)相關(guān)的概念

白盒測試——把測試對象看作一個(gè)打開的盒子,程序內(nèi)部的邏輯結(jié)構(gòu)和其他信息對測試人員是公開的。

回歸測試——軟件或環(huán)境的修復(fù)或更正后的“再測試”,自動(dòng)javascript:;" onClick="javascript:tagshow(event, '測試工具');" target="_self">測試工具對這類測試尤其有用。

單元測試——是小粒度的測試,以測試某個(gè)功能或代碼塊。一般由程序員來做,因?yàn)樗枰纼?nèi)部程序設(shè)計(jì)和編碼的細(xì)節(jié)。

junit ——是一個(gè)開發(fā)源代碼的java測試框架,用于編寫和運(yùn)行可重復(fù)的測試。他是用于單元測試框架體系xunit的一個(gè)實(shí)例(用于java語言)。主要用于白盒測試,回歸測試。

2、單元測試概述

2.1、單元測試的好處

a、提高開發(fā)速度——測試是以自動(dòng)化方式執(zhí)行的,提升了測試代碼的執(zhí)行效率。

b、提高軟件代碼質(zhì)量——它使用小版本發(fā)布至集成,便于實(shí)現(xiàn)人員除錯(cuò)。同時(shí)引入重構(gòu)概念,讓代碼更干凈和富有彈性。

c、提升系統(tǒng)的可信賴度——它是回歸測試的一種。支持修復(fù)或更正后的“再測試”,可確保代碼的正確性。

2.2、單元測試的針對對象

a、面向過程的軟件開發(fā)針對過程。

b、面向?qū)ο蟮能浖_發(fā)針對對象。

c、可以做類測試,功能測試,接口測試(常用于測試類中的方法)。

2.3、單元測試工具和框架

目前的流行的單元測試工具是xunit系列框架,常用的根據(jù)語言不同分為junit(java),cppunit(c++),dunit (delphi ),nunit(.net),phpunit(php )等等。該測試框架的第一個(gè)和杰出的應(yīng)用是由erich gamma (《設(shè)計(jì)模式》的作者)和kent beck(xp(extreme programming)的創(chuàng)始人 )提供的開放源代碼的junit。

 

3.junit入門簡介

3.1、junit的好處和junit單元測試編寫原則

好處:

a、可以使測試代碼與產(chǎn)品代碼分開。

b、針對某一個(gè)類的測試代碼通過較少的改動(dòng)便可以應(yīng)用于另一個(gè)類的測試。

c、易于集成到測試人員的構(gòu)建過程中,junit和ant的結(jié)合可以實(shí)施增量開發(fā)。

d、junit是公開源代碼的,可以進(jìn)行二次開發(fā)。

c、可以方便地對junit進(jìn)行擴(kuò)展。

編寫原則:

a、是簡化測試的編寫,這種簡化包括測試框架的學(xué)習(xí)和實(shí)際測試單元的編寫。

b、是使測試單元保持持久性。

c、是可以利用既有的測試來編寫相關(guān)的測試。

3.2、junit的特征

a、使用斷言方法判斷期望值和實(shí)際值差異,返回boolean值。

b、測試驅(qū)動(dòng)設(shè)備使用共同的初始化變量或者實(shí)例。

c、測試包結(jié)構(gòu)便于組織和集成運(yùn)行。

d、支持圖型交互模式和文本交互模式。

3.3、junit框架組成

a、對測試目標(biāo)進(jìn)行測試的方法與過程集合,可稱為測試用例(testcase)。

b、測試用例的集合,可容納多個(gè)測試用例(testcase),將其稱作測試包(testsuite)。

c、測試結(jié)果的描述與記錄。(testresult) 。

d、測試過程中的事件監(jiān)聽者(testlistener)。

e、每一個(gè)測試方法所發(fā)生的與預(yù)期不一致狀況的描述,稱其測試失敗元素(testfailure)

f、junit framework中的出錯(cuò)異常(assertionfailederror)。

junit框架是一個(gè)典型的composite模式:testsuite可以容納任何派生自test的對象;當(dāng)調(diào)用testsuite對象的run()方法是,會(huì)遍歷自己容納的對象,逐個(gè)調(diào)用它們的run()方法。(可參考《程序員》2003-6期)。

上一頁12345下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd