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

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

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

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

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

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

2、單元測(cè)試概述

2.1、單元測(cè)試的好處

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

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

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

2.2、單元測(cè)試的針對(duì)對(duì)象

a、面向過(guò)程的軟件開(kāi)發(fā)針對(duì)過(guò)程。

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

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

2.3、單元測(cè)試工具和框架

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

 

3.junit入門(mén)簡(jiǎn)介

3.1、junit的好處和junit單元測(cè)試編寫(xiě)原則

好處:

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

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

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

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

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

編寫(xiě)原則:

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

b、是使測(cè)試單元保持持久性。

c、是可以利用既有的測(cè)試來(lái)編寫(xiě)相關(guān)的測(cè)試。

3.2、junit的特征

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

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

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

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

3.3、junit框架組成

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

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

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

d、測(cè)試過(guò)程中的事件監(jiān)聽(tīng)者(testlistener)。

e、每一個(gè)測(cè)試方法所發(fā)生的與預(yù)期不一致?tīng)顩r的描述,稱(chēng)其測(cè)試失敗元素(testfailure)

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

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

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