版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、,第三章 單元測(cè)試,[本章要點(diǎn)]單元測(cè)試的定義;單元測(cè)試同集成測(cè)試和系統(tǒng)測(cè)試的區(qū)別;單元測(cè)試環(huán)境的組成;單元測(cè)試的分析方法;單元測(cè)試的用例設(shè)計(jì)方法;單元測(cè)試的過(guò)程;單元測(cè)試舉例。,[本章目標(biāo)]掌握單元測(cè)試的概念;了解單元測(cè)試的誤區(qū);了解單元測(cè)試與集成測(cè)試和系統(tǒng)測(cè)試的區(qū)別;掌握單元測(cè)試的策略;掌握單元測(cè)試分析的方法;掌握單元測(cè)試用例設(shè)計(jì)方法。,3.1單元測(cè)試概述 通常而言,單元測(cè)試是在軟件
2、開(kāi)發(fā)過(guò)程中要進(jìn)行的最低級(jí)別的測(cè)試活動(dòng),或者說(shuō)是針對(duì)軟件設(shè)計(jì)的最小單位——程序模塊,進(jìn)行正確性檢驗(yàn)的測(cè)試工作。其目的在于發(fā)現(xiàn)每個(gè)程序模塊內(nèi)部可能存在的差錯(cuò)。 在單元測(cè)試活動(dòng)中,軟件的獨(dú)立單元將在與程序的其他部分相隔離的情況下進(jìn)行測(cè)試,主要工作分為兩個(gè)步驟:人工靜態(tài)檢查和動(dòng)態(tài)執(zhí)行跟蹤。 單元測(cè)試的分工大致如下:一般由開(kāi)發(fā)組在一般由開(kāi)發(fā)組在開(kāi)發(fā)組組長(zhǎng)監(jiān)督下進(jìn)行,保證使,用合適的測(cè)試技術(shù),根據(jù)單元測(cè)試計(jì)劃和
3、測(cè)試說(shuō)明文檔中制定的要求,執(zhí)行充分的測(cè)試;由編寫(xiě)該單元的開(kāi)發(fā)組中的成員設(shè)計(jì)所需要的測(cè)試用例,測(cè)試該單元并修改缺陷。 3.1.1單元測(cè)試誤區(qū) 1、單元測(cè)試是一種浪費(fèi)時(shí)間的工作 2、單元測(cè)試只能證明代碼做了什么 3、我是個(gè)很棒的程序員, 我是不是可以不進(jìn)行單元測(cè)試? 4、集成測(cè)試能捕捉到所有的Bug 5、單元測(cè)試的成本效率不高,其實(shí),在經(jīng)過(guò)了單元測(cè)試之后,系統(tǒng)集成過(guò)程將會(huì)大大地簡(jiǎn)化。
4、 3.1.2單元測(cè)試與集成測(cè)試區(qū)別 單元測(cè)試與集成測(cè)試的主要區(qū)別在于測(cè)試的對(duì)象不同。單元測(cè)試對(duì)象是實(shí)現(xiàn)具體功能的單元,一般對(duì)應(yīng)詳細(xì)設(shè)計(jì)中所描述的設(shè)計(jì)單元。集成測(cè)試是針對(duì)概要設(shè)計(jì)所包含的模塊以及模塊組合進(jìn)行的測(cè)試。 單元測(cè)試所使用的主要測(cè)試方法是基于代碼的白盒測(cè)試。而集成測(cè)試所使用的主要測(cè)試方法是基于功能的黑盒測(cè)試。,因?yàn)榧蓽y(cè)試要在所有要集成的模塊都通過(guò)了單元測(cè)試之后才能進(jìn)行,也就是說(shuō)在測(cè)試時(shí)間上,集
5、成測(cè)試要晚于單元測(cè)試,所以單元測(cè)試的好壞直接影響著集成測(cè)試。 單元測(cè)試的工作內(nèi)容包括模塊內(nèi)程序的邏輯、功能、參數(shù)傳遞、變量引用、出錯(cuò)處理、需求和設(shè)計(jì)中有具體的要求等方面測(cè)試。集成測(cè)試的工作內(nèi)容主要是驗(yàn)證各個(gè)接口、接口之間的數(shù)據(jù)傳遞關(guān)系、模塊組合后能否達(dá)到預(yù)期效果。 雖然單元測(cè)試和集成測(cè)試有一些區(qū)別,但是二者之間也有著千絲萬(wàn)縷的聯(lián)系。目前集成測(cè)試和單元測(cè)試的界限趨向模糊。,3.1.3單元測(cè)試與系統(tǒng)測(cè)試區(qū)
6、別 單元測(cè)試與系統(tǒng)測(cè)試的區(qū)別不僅僅在于測(cè)試的對(duì)象和測(cè)試的層次的不同,最重要的區(qū)別是測(cè)試性質(zhì)不同。在單元測(cè)試過(guò)程中,單元測(cè)試的執(zhí)行早于系統(tǒng)測(cè)試,測(cè)試的是軟件單元的具體實(shí)現(xiàn)、內(nèi)部邏輯結(jié)構(gòu)以及數(shù)據(jù)流向等。系統(tǒng)測(cè)試屬于后期測(cè)試,主要是根據(jù)需求規(guī)格說(shuō)明書(shū)進(jìn)行的,是從用戶角度來(lái)進(jìn)行的功能測(cè)試和性能測(cè)試等等,證明系統(tǒng)是否滿足用戶的需求。 單元測(cè)試中發(fā)現(xiàn)的錯(cuò)誤容易進(jìn)行定位,并且多個(gè)單元測(cè)試可以并行進(jìn)行;而系統(tǒng)測(cè)試
7、發(fā)現(xiàn)的錯(cuò)誤比較難定位。,3.2單元測(cè)試環(huán)境 由于一個(gè)模塊或一個(gè)方法(Method)并不是一個(gè)獨(dú)立的程序,在考慮測(cè)試它時(shí)要同時(shí)考慮它和外界的聯(lián)系,因此要用到一些輔助模塊,來(lái)模擬與所測(cè)模塊相聯(lián)系的其他模塊。一般把這些輔助模塊分為兩種: 1、驅(qū)動(dòng)模塊(driver):相當(dāng)于所測(cè)模塊的主程序。 2、樁模塊(stub):用于代替所測(cè)模塊調(diào)用的子模塊。 那么,所測(cè)模塊和與它相關(guān)
8、的驅(qū)動(dòng)模塊及樁模塊共同構(gòu)成了一個(gè)“測(cè)試環(huán)境”,如圖3-2所示。,圖3-2 單元測(cè)試環(huán)境,3.3單元測(cè)試策略 單元測(cè)試涉及到的測(cè)試技術(shù)通常有:針對(duì)被測(cè)單元需求的功能測(cè)試、用于代碼評(píng)審和代碼走讀的靜態(tài)測(cè)試、白盒測(cè)試、狀態(tài)轉(zhuǎn)換測(cè)試和非功能測(cè)試。 為了提高單元測(cè)試的質(zhì)量,只了解這些單元測(cè)試技術(shù)還遠(yuǎn)遠(yuǎn)不夠,還要選擇合適的測(cè)試策略。在選擇測(cè)試策略時(shí),主要考慮如下3種方式:自頂向下(Top Down Unit Te
9、sting)的單元測(cè)試策略、自底向上的單元測(cè)試策略(Bottom up Unit Testing)和孤立的單元測(cè)試策略。,3.3.1自頂向下的單元測(cè)試策略 一)步驟: 1. 從最頂層開(kāi)始,把頂層調(diào)用的單元做成樁模塊。 2. 對(duì)第二層測(cè)試,使用上面已測(cè)試的單元做驅(qū)動(dòng)模塊。 3. 依次類(lèi)推,直到全部單元測(cè)試結(jié)束。 二)優(yōu)點(diǎn):可以在集成測(cè)試之前為系統(tǒng)提供早期的集成途徑。 三)缺點(diǎn):
10、單元測(cè)試被樁模塊控制,隨著單元測(cè)試的不斷進(jìn)行,測(cè)試過(guò)程也會(huì)變得越來(lái)越復(fù)雜,測(cè)試難度以及開(kāi)發(fā)和維護(hù)的成本都不斷增加;,要求的低層次的結(jié)構(gòu)覆蓋率也難以得到保證;由于需求變更或其他原因而必須更改任何一個(gè)單元時(shí),就必須重新測(cè)試該單元下層調(diào)用的所有單元;低層單元測(cè)試依賴頂層測(cè)試,無(wú)法進(jìn)行并行測(cè)試,使測(cè)試進(jìn)度受到不同程度的影響,延長(zhǎng)測(cè)試周期。 四)總結(jié):從上述分析中,不難看出該測(cè)試策略的成本要高于孤立的單元測(cè)試成本,因此從測(cè)試成本方面來(lái)考慮
11、,并不是最佳的單元測(cè)試策略。 3.3.2自底向上的單元測(cè)試 一)步驟: 1、先對(duì)模塊調(diào)用圖上的最底層模塊開(kāi)始測(cè)試,模擬調(diào)用該模塊的模塊為驅(qū)動(dòng)模塊。,2、其次,對(duì)上一層模塊進(jìn)行單元測(cè)試,用已經(jīng)被測(cè)試過(guò)的模塊做樁模塊。 3、依次類(lèi)推,直到全部單元測(cè)試結(jié)束。 二)優(yōu)點(diǎn):不需要單獨(dú)設(shè)計(jì)樁模塊。 三)缺點(diǎn):隨著單元測(cè)試的不斷進(jìn)行,測(cè)試過(guò)程會(huì)變得越來(lái)越復(fù)雜,測(cè)試周期延長(zhǎng),測(cè)試和維護(hù)的成本增加;隨著各
12、個(gè)基本單元逐步加入,系統(tǒng)會(huì)變得異常龐大,因此測(cè)試人員不容易控制;越接近頂層的模塊的測(cè)試其結(jié)構(gòu)覆蓋率就越難以保證; 另外,頂層測(cè)試易受底層模塊變更的影響,任何一個(gè)模塊修改之后,直接或間接調(diào)用該模塊的所有單元都要重新測(cè)試。,由于只有在底層單元測(cè)試完畢之后才能夠進(jìn)行頂層單元的測(cè)試,所以并行性不好。另外,自底向上的單元測(cè)試也不能和詳細(xì)設(shè)計(jì)、編碼同步進(jìn)行。 四)總結(jié):相對(duì)其它測(cè)試策略而言,該測(cè)試策略比較合理,尤其是需要考慮
13、對(duì)象或復(fù)用時(shí)。它屬于面向功能的測(cè)試,而非面向結(jié)構(gòu)的測(cè)試。對(duì)那些以高覆蓋率為目標(biāo)或者軟件開(kāi)發(fā)時(shí)間緊張的軟件項(xiàng)目來(lái)說(shuō),這種測(cè)試方法不適用。 3.3.3孤立測(cè)試 一)步驟:無(wú)需考慮每個(gè)模塊與其他模塊之間的關(guān)系,分別為每個(gè)模塊單獨(dú)設(shè)計(jì)樁模塊和驅(qū)動(dòng)模塊,逐一完成所有單元模塊的測(cè)試。,二)優(yōu)點(diǎn):該方法簡(jiǎn)單、容易操作,因此所需測(cè)試時(shí)間短,能夠達(dá)到高覆蓋率。 三)缺點(diǎn):不能為集成測(cè)試提供早期的集成途徑。依賴結(jié)構(gòu)設(shè)計(jì)信息,需要設(shè)
14、計(jì)多個(gè)樁模塊和驅(qū)動(dòng)模塊,增加了額外的測(cè)試成本。 四)總結(jié):該方法是比較理想的單元測(cè)試方法。如輔助適當(dāng)?shù)募蓽y(cè)試策略,有利于縮短項(xiàng)目的開(kāi)發(fā)時(shí)間。 3.3.4綜合測(cè)試 在單元測(cè)試中,為了有效地減少開(kāi)發(fā)樁模塊的工作量,可以考慮綜合自底向上測(cè)試策略和孤立測(cè)試策略。,3.4單元測(cè)試分析 一般可以從如下幾個(gè)方面進(jìn)行分析和測(cè)試,即: 1、判斷得到的結(jié)果是否正確? 因?yàn)?,?duì)于測(cè)試
15、而言,首要的任務(wù)就是察看一下所期望的結(jié)果是否正確,即對(duì)結(jié)果進(jìn)行驗(yàn)證。 2、判斷是否滿足所有的邊界條件? 邊界條件是指軟件計(jì)劃的操作界限所在的邊緣條件。邊界條件測(cè)試是單元測(cè)試中最后也是最重要的一項(xiàng)任務(wù)。在使用邊界值測(cè)試的方法時(shí),不妨結(jié)合實(shí)際項(xiàng)目參考以下測(cè)試技巧:輸入了完全偽造或者和要求不一致的數(shù)據(jù)。 1)輸入一個(gè)格式錯(cuò)誤的數(shù)據(jù)。,2)提供一個(gè)空值或者不完整的值。 3)與意
16、料之中的值相差很遠(yuǎn)的值。 4)假如一個(gè)列表中不允許有重復(fù)的數(shù)值存在,就可以給它傳入一組存在重復(fù)數(shù)值的列表;如果某個(gè)字段的值要求唯一,那么可以輸入兩個(gè)或多個(gè)相同的數(shù)值來(lái)進(jìn)行測(cè)試。 5)假如一個(gè)列表中不允許有重復(fù)的數(shù)值存在,就可以給它傳入一組存在重復(fù)數(shù)值的列表;如果某個(gè)字段的值 要求唯一,那么可以輸入兩個(gè)或多個(gè)相同的數(shù)值來(lái)進(jìn)行測(cè)試。 6) 如果要求按照一定的順序來(lái)存儲(chǔ)一些數(shù)據(jù),那么可以輸入一些順序打亂的數(shù)據(jù)
17、來(lái)做測(cè)試。,7)對(duì)于一些做了安全限制的部分,盡量通過(guò)各種途徑嘗試能否繞過(guò)安全限制的測(cè)試。 8) 如果功能的啟用有一定的順序限制,就用和期望不一致的順序來(lái)進(jìn)行測(cè)試。 3、分析能否使用反向關(guān)聯(lián)檢查? 在實(shí)際程序中,有一些方法可以使用反向的邏輯關(guān)系來(lái)驗(yàn)證它們。 4、分析是否能使用其他手段來(lái)交叉檢查一下結(jié)果? 一般而言,對(duì)某個(gè)值進(jìn)行計(jì)算會(huì)有一種以上的算法,但我們會(huì)因考慮到運(yùn)行效率或其他方面
18、的原因而選擇其中的一種。 5、分析是否可以強(qiáng)制一些錯(cuò)誤發(fā)生?,在實(shí)際使用過(guò)程當(dāng)中,總會(huì)有意想不到各種各樣的情況和錯(cuò)誤發(fā)生。 6、分析模塊接口 數(shù)據(jù)在接口處出錯(cuò)就好像丟掉了進(jìn)入大門(mén)的鑰匙,無(wú)法進(jìn)行下一步的工作,只有在數(shù)據(jù)能正確流入、流出模塊的前提下,其他測(cè)試才有意義。 7、分析局部數(shù)據(jù)結(jié)構(gòu) 局部數(shù)據(jù)結(jié)構(gòu)往往是錯(cuò)誤的根源,對(duì)其檢查主要是為了保證臨時(shí)存儲(chǔ)在模塊內(nèi)的數(shù)據(jù)在程序執(zhí)行
19、過(guò)程中完整、正確,因此應(yīng)仔細(xì)設(shè)計(jì)測(cè)試用例。 8、 分析獨(dú)立路徑,在模塊中應(yīng)對(duì)每一條獨(dú)立執(zhí)行路徑進(jìn)行測(cè)試,單元測(cè)試的基本任務(wù)是保證模塊中每條語(yǔ)句至少執(zhí)行一次。 9、 分析出錯(cuò)處理是否正確 一個(gè)好的設(shè)計(jì)應(yīng)能預(yù)見(jiàn)各種出錯(cuò)條件,并進(jìn)行適當(dāng)?shù)某鲥e(cuò)處理,即預(yù)設(shè)各種出錯(cuò)處理通路。 3.5單元測(cè)試用例設(shè)計(jì) 單元測(cè)試用例的設(shè)計(jì)既可以使用白盒測(cè)試也可以使用黑盒測(cè)試,但以白盒測(cè)試為主。 白
20、盒測(cè)試進(jìn)入的前提條件是測(cè)試人員已經(jīng)對(duì)被測(cè)試對(duì)象有了一定的了解,基本上明確了被測(cè)試軟件的邏輯結(jié)構(gòu)。,黑盒測(cè)試是要首先了解軟件產(chǎn)品具備的功能和性能等需求,再根據(jù)需求設(shè)計(jì)一批測(cè)試用例以驗(yàn)證程序內(nèi)部活動(dòng)是否符合設(shè)計(jì)要求的活動(dòng)。 測(cè)試人員在實(shí)際工作中至少應(yīng)該設(shè)計(jì)能夠覆蓋如下需求的基于功能的單元測(cè)試用例: 測(cè)試程序單元的功能是否實(shí)現(xiàn); 測(cè)試程序單元性能是否滿足要求(可選); 是否有可選的其它測(cè)試
21、特性,如邊界、余量、安全性、可靠性、強(qiáng)度測(cè)試、人機(jī)交互界面測(cè)試等。 無(wú)論是白盒測(cè)試還是黑盒測(cè)試,每個(gè)測(cè)試用例都應(yīng)該包含下面4 個(gè)關(guān)鍵元素:,(1) 被測(cè)單元模塊初始狀態(tài)聲明,即測(cè)試用例的開(kāi)始狀態(tài)(僅適用于被測(cè)單元維持了調(diào)用中間狀態(tài)的情況); (2) 被測(cè)單元的輸入,包含由被測(cè)單元讀入的任何外部數(shù)據(jù)值; (3) 該測(cè)試用例實(shí)際測(cè)試的代碼,用被測(cè)單元的功能和測(cè)試用例設(shè)計(jì)中使用的分析來(lái)說(shuō)明,如:?jiǎn)卧?/p>
22、哪一個(gè)決策條件被測(cè)試; (4) 測(cè)試用例的期望輸出結(jié)果(在測(cè)試進(jìn)行之前的測(cè)試說(shuō)明中定義)。 一、測(cè)試用例設(shè)計(jì)步驟 以下描述進(jìn)行測(cè)試用例設(shè)計(jì)的6步通用過(guò)程。,步驟1:首先使被測(cè)單元運(yùn)行; 這個(gè)階段適合的技術(shù)有: ①模塊設(shè)計(jì)說(shuō)明導(dǎo)出的測(cè)試 ②對(duì)等區(qū)間劃分 步驟2:正面測(cè)試(Positive Testing)
23、 這個(gè)階段適合的技術(shù): ①設(shè)計(jì)說(shuō)明導(dǎo)出的測(cè)試 ②對(duì)等區(qū)間劃分 ③狀態(tài)轉(zhuǎn)換測(cè)試 步驟3:負(fù)面測(cè)試(Negative Testing) 適合的技術(shù)有: ①錯(cuò)誤猜測(cè),②邊界值分析 ③內(nèi)部邊界值測(cè)試 ④狀態(tài)轉(zhuǎn)換測(cè)試 步驟4:
24、模塊設(shè)計(jì)需求中其它測(cè)試特性用例設(shè)計(jì) 適合的技術(shù):設(shè)計(jì)說(shuō)明導(dǎo)出的測(cè)試 步驟5:覆蓋率測(cè)試用例設(shè)計(jì) 適合的技術(shù): ①分支測(cè)試 ②條件測(cè)試 ③數(shù)據(jù)定義-使用測(cè)試 ④狀態(tài)轉(zhuǎn)換測(cè)試 步驟6:測(cè)試執(zhí)行,步驟7:完善代碼覆蓋 適合的技術(shù):
25、 ①分支測(cè)試 ②條件測(cè)試 ③設(shè)計(jì)定義――試驗(yàn)測(cè)試 ④狀態(tài)轉(zhuǎn)換測(cè)試,3.6單元測(cè)試過(guò)程 圖3-7從宏觀的角度概括了單元測(cè)試的工作過(guò)程圖。 一、單元測(cè)試進(jìn)入和退出準(zhǔn)則 如表3-1和表3-2所示:,表3-1 進(jìn)入準(zhǔn)則,,表3-2 退出準(zhǔn)則,二、單元測(cè)試過(guò)程,,圖3-7 單元測(cè)試工作過(guò)程,(1)準(zhǔn)備階段(2)編制階段(3)代碼審查階段
26、(4)單元測(cè)試階段(5)評(píng)審、提交階段,,,3.7單元測(cè)試舉例 一、單元測(cè)試計(jì)劃 1. 簡(jiǎn)介 這份文檔的目標(biāo)是詳細(xì)描述對(duì)兩票系統(tǒng)的可以實(shí)現(xiàn)在二次系統(tǒng)圖上進(jìn)行圖形開(kāi)票模塊的功能驗(yàn)證的測(cè)試過(guò)程。 2. 本測(cè)試的總目標(biāo): 是否實(shí)現(xiàn)了需求文檔中定義的所有功能。 3. 完整性需求 在測(cè)試該模塊是否實(shí)現(xiàn)了需求文檔中定義的所有功能之前,應(yīng)該做如下兩項(xiàng)工作:,①測(cè)試數(shù)據(jù)初
27、始化是否無(wú)誤; ②測(cè)試二次圖開(kāi)票GUI界面是否與系統(tǒng)維護(hù)模塊顯示一致。 4. 單元測(cè)試終止標(biāo)準(zhǔn) ①硬件資源不足或故障造成軟件無(wú)法運(yùn)行 ②軟件運(yùn)行后無(wú)法正確顯示(如:因數(shù)據(jù)初始化有誤造成GUI界面同系統(tǒng)維護(hù)模塊顯示不一致或不正確等); ③所有功能測(cè)試均已經(jīng)完成 5. 資源需求 ①軟件資源 操作系統(tǒng):windows 2000,web服務(wù)器:Tomcat 5.0
28、 數(shù)據(jù)庫(kù)服務(wù)器:SQL Server 2000 瀏覽器:Microsoft IE 6.0 測(cè)試工具:Junit ②硬件資源 同開(kāi)發(fā)用pc機(jī)配置相同即可。 ③測(cè)試進(jìn)度,表3-3 二次系統(tǒng)圖圖形開(kāi)票模塊,6. 準(zhǔn)備測(cè)試的特征 以下特征將被測(cè)試,以確保該模塊能滿足需求規(guī)格說(shuō)明書(shū)中指定的需求: 需求2.2.1 用戶界面 需求2.2
29、.2 彈出菜單 需求2.2.3圖形開(kāi)票 7. 不準(zhǔn)備測(cè)試的特征 本次測(cè)試將不考慮是否能夠同一次系統(tǒng)圖圖形開(kāi)票模塊的集成。 8. 測(cè)試方法 該單元測(cè)試方法包括功能測(cè)試、GUI測(cè)試。,9. 通過(guò)/失敗標(biāo)準(zhǔn) 10. 測(cè)試結(jié)束后須提交的產(chǎn)物包括以下幾個(gè)文檔: 本測(cè)試計(jì)劃 測(cè)試規(guī)格說(shuō)明文檔 測(cè)試結(jié)果報(bào)告 向測(cè)試經(jīng)理和開(kāi)發(fā)經(jīng)理提交
30、的每日測(cè)試狀態(tài)報(bào)告 缺陷報(bào)告 11、測(cè)試執(zhí)行人員 12、風(fēng)險(xiǎn)和應(yīng)急計(jì)劃,,二、測(cè)試的設(shè)計(jì)和開(kāi)發(fā) 測(cè)試設(shè)計(jì)和開(kāi)發(fā)要以測(cè)試計(jì)劃作為輸入。在設(shè)計(jì)測(cè)試時(shí),首先應(yīng)明確測(cè)試目標(biāo)(細(xì)化測(cè)試的方法和范圍);確定每個(gè)測(cè)試的輸入規(guī)格說(shuō)明;確定每個(gè)測(cè)試使用的測(cè)試配置;復(fù)查測(cè)試設(shè)計(jì)的覆蓋率和測(cè)試的準(zhǔn)確度。 在對(duì)本單元進(jìn)行測(cè)試時(shí)所采用的方法是:先完成黑盒測(cè)試,然后統(tǒng)計(jì)白盒覆蓋率,針對(duì)未覆蓋的
31、邏輯單位設(shè)計(jì)測(cè)試用例覆蓋它。 然后,就應(yīng)該開(kāi)發(fā)測(cè)試用例,應(yīng)該注意的是在測(cè)試用例中應(yīng)該盡可能詳細(xì)地描述測(cè)試過(guò)程,對(duì)于耗時(shí)的測(cè)試進(jìn)行自動(dòng)化。 最后,驗(yàn)證和調(diào)試測(cè)試。,3.8單元測(cè)試經(jīng)驗(yàn)總結(jié) 測(cè)試人員在進(jìn)行測(cè)試的工作過(guò)程中,應(yīng)該注意積累測(cè)試工作經(jīng)驗(yàn),這樣可以縮短單元測(cè)試的時(shí)間,提高測(cè)試效果和效率。如: 1、在做單元測(cè)試的過(guò)程中,要靈活選用測(cè)試用例設(shè)計(jì)技術(shù),如本章中的兩票系統(tǒng)單元測(cè)試過(guò)程
32、中,首先使用黑盒測(cè)試用例設(shè)計(jì)技術(shù),然后根據(jù)相應(yīng)的覆蓋率統(tǒng)計(jì)再補(bǔ)充白盒測(cè)試用例。既減少了測(cè)試工作的重復(fù),又保證了單元測(cè)試的完整性。 2、應(yīng)該盡量開(kāi)發(fā)簡(jiǎn)單測(cè)試驅(qū)動(dòng)代碼,增強(qiáng)其可讀性。最重要的是,單元測(cè)試代碼中不能包含分支和邏輯語(yǔ)句,因?yàn)檫@意味著有多個(gè)測(cè)試在同時(shí)進(jìn)行。這樣將會(huì)使測(cè)試代碼變得難以理解和維護(hù)。,本章小結(jié) 通過(guò)單元測(cè)試,我們驗(yàn)證開(kāi)發(fā)人員所書(shū)寫(xiě)的編碼是可以按照其所設(shè)想的方式執(zhí)行的,產(chǎn)出了符合預(yù)期值的結(jié)果。這就實(shí)
33、現(xiàn)了單元測(cè)試的目的。相比后面階段的測(cè)試,單元測(cè)試的創(chuàng)建更簡(jiǎn)單,維護(hù)更容易,并且可以更方便的進(jìn)行重復(fù)。 從全程的費(fèi)用來(lái)考慮, 相比起那些復(fù)雜且曠日持久的集成測(cè)試,或是不穩(wěn)定的軟件系統(tǒng)來(lái)說(shuō),單元測(cè)試所需的費(fèi)用是很低的。 模塊單元設(shè)計(jì)完畢之后的開(kāi)發(fā)階段就是單元測(cè)試。,值得注意的是,如果在書(shū)寫(xiě)代碼之前就進(jìn)行單元測(cè)試,測(cè)試設(shè)計(jì)就會(huì)顯得更加靈活,因?yàn)橐坏┐a完成,對(duì)軟件的測(cè)試可能就受制于代碼,傾向于測(cè)試該段代碼完
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第1章軟件工程與軟件測(cè)試
- 第3章單元測(cè)試
- 2013第3章3.1 軟件概述
- 第3章單元測(cè)試
- 軟件測(cè)試(宮云戰(zhàn)版)第2章
- 軟件工程第3章習(xí)題解答
- 第11章 軟件保護(hù)技術(shù) 第11章 軟件保護(hù)技術(shù)
- 第3章電子商務(wù)的軟件和工具
- 軟件工程第3階段測(cè)試題
- 第8章惡意軟件
- 第3章植物的激素調(diào)節(jié)單元測(cè)試
- 軟件工程第4章
- 第零章 matlab軟件介紹
- 章節(jié)測(cè)試第5章
- 第3章 物質(zhì)構(gòu)成的奧秘單元測(cè)試
- 章節(jié)測(cè)試第7章
- 選修3 第3章 單元質(zhì)量檢測(cè)試題及解析
- 第9章軟件詳細(xì)設(shè)計(jì)
- 章節(jié)測(cè)試第4章
- 選修3 第3章 單元質(zhì)量檢測(cè)試題及解析
評(píng)論
0/150
提交評(píng)論