[計(jì)算機(jī)]白盒測(cè)試法

[計(jì)算機(jī)]白盒測(cè)試法

ID:40004494

大?。?18.00 KB

頁(yè)數(shù):32頁(yè)

時(shí)間:2019-07-17

[計(jì)算機(jī)]白盒測(cè)試法_第1頁(yè)
[計(jì)算機(jī)]白盒測(cè)試法_第2頁(yè)
[計(jì)算機(jī)]白盒測(cè)試法_第3頁(yè)
[計(jì)算機(jī)]白盒測(cè)試法_第4頁(yè)
[計(jì)算機(jī)]白盒測(cè)試法_第5頁(yè)
資源描述:

《[計(jì)算機(jī)]白盒測(cè)試法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、7.6白盒測(cè)試技術(shù)測(cè)試方案包括具體的測(cè)試目的,應(yīng)該輸入的測(cè)試數(shù)據(jù)和預(yù)期的結(jié)果。通常又把測(cè)試數(shù)據(jù)和預(yù)期的輸出結(jié)果稱為測(cè)試用例。設(shè)計(jì)測(cè)試方案的基本目標(biāo):確定一組最可能發(fā)現(xiàn)某個(gè)錯(cuò)誤或某類錯(cuò)誤的測(cè)試數(shù)據(jù)。白盒測(cè)試法按照程序內(nèi)部的邏輯測(cè)試程序,檢測(cè)程序中的主要執(zhí)行通路是否都能按預(yù)定要求正確工作。本節(jié)講述在用白盒方法測(cè)試軟件時(shí)設(shè)計(jì)測(cè)試數(shù)據(jù)的典型技術(shù)。學(xué)習(xí)內(nèi)容邏輯覆蓋的概念邏輯覆蓋的分類語(yǔ)句覆蓋判定覆蓋條件覆蓋判定/條件覆蓋條件組合覆蓋點(diǎn)覆蓋邊覆蓋路徑覆蓋覆蓋法之間的關(guān)系教學(xué)目標(biāo)理論環(huán)節(jié)學(xué)習(xí)理解白盒測(cè)試方法的基本概念學(xué)習(xí)理解白盒

2、測(cè)試的覆蓋理論實(shí)踐環(huán)節(jié)通過(guò)案例運(yùn)用學(xué)習(xí)掌握覆蓋問(wèn)題的解決方法邏輯覆蓋的概念邏輯覆蓋,是以程序內(nèi)在邏輯結(jié)構(gòu)為基礎(chǔ)的測(cè)試,是對(duì)一系列測(cè)試過(guò)程的總稱,這組測(cè)試過(guò)程逐漸進(jìn)行越來(lái)越完整的通路測(cè)試。7.6.1邏輯覆蓋邏輯覆蓋法的分類根據(jù)覆蓋目標(biāo)的不同,邏輯覆蓋又可分為:語(yǔ)句覆蓋判定覆蓋條件覆蓋判定/條件覆蓋組合覆蓋路徑覆蓋voidDoWork(intx,inty,intz){intk=0,j=0;if((x>3)&&(z<10)){k=x*y-1;j=sqrt(k);}//語(yǔ)句塊1if((x==4)

3、

4、(y>5)){j=x*y

5、+10;}//語(yǔ)句塊2j=j%3;//語(yǔ)句塊3}程序舉例程序流程圖X>3&&z<10執(zhí)行語(yǔ)句塊1執(zhí)行語(yǔ)句塊2X==4

6、

7、y>5執(zhí)行語(yǔ)句塊3FFTTabdcef語(yǔ)句覆蓋語(yǔ)句覆蓋:選擇足夠多的測(cè)試用例,使得程序中的每個(gè)可執(zhí)行語(yǔ)句至少執(zhí)行一次。語(yǔ)句覆蓋要實(shí)現(xiàn)DoWork函數(shù)的語(yǔ)句覆蓋,只需設(shè)計(jì)一個(gè)測(cè)試用例就可以覆蓋程序中的所有可執(zhí)行語(yǔ)句。測(cè)試用例輸入為:{x=4、y=5、z=5}程序執(zhí)行的路徑是:abdfX>3&&z<10執(zhí)行語(yǔ)句塊1執(zhí)行語(yǔ)句塊2X==4

8、

9、y>5執(zhí)行語(yǔ)句塊3FFTTabdcef

10、

11、結(jié)果如何呢?(X>3&

12、&z<10)∩(X==4

13、

14、y>5)語(yǔ)句覆蓋分析:語(yǔ)句覆蓋可以保證程序中的每個(gè)語(yǔ)句都得到執(zhí)行,但發(fā)現(xiàn)不了判定中邏輯運(yùn)算的錯(cuò)誤,即它并不是一種充分的檢驗(yàn)方法。例如在第一個(gè)判定((x>3)&&(z<10))中把“&&”錯(cuò)誤地寫成了“

15、

16、”,這時(shí)仍使用該測(cè)試用例,則程序仍會(huì)按照流程圖上的路徑abdf執(zhí)行??梢哉f(shuō)語(yǔ)句覆蓋是最弱的邏輯覆蓋準(zhǔn)則。判定覆蓋判定覆蓋:通過(guò)執(zhí)行足夠多的測(cè)試用例,使得程序中的每個(gè)判定至少都獲得一次“真”值和“假”值,也就是使程序中的每個(gè)取“真”分支和取“假”分支至少均經(jīng)歷一次,也稱為“分支覆蓋”。判定

17、覆蓋要實(shí)現(xiàn)DoWork函數(shù)的判定覆蓋,需要設(shè)計(jì)兩個(gè)測(cè)試用例。測(cè)試用例的輸入為:{x=4、y=5、z=5};{x=2、y=5、z=5}程序執(zhí)行的路徑分別是:abdf;acefX>3&&z<10執(zhí)行語(yǔ)句塊1執(zhí)行語(yǔ)句塊2X==4

18、

19、y>5執(zhí)行語(yǔ)句塊3FFTTabdcefy<5結(jié)果如何呢?判定覆蓋分析:上述兩個(gè)測(cè)試用例不僅滿足了判定覆蓋,同時(shí)還做到語(yǔ)句覆蓋。從這點(diǎn)看似乎判定覆蓋比語(yǔ)句覆蓋更強(qiáng)一些,但仍然無(wú)法確定判定內(nèi)部條件的錯(cuò)誤。例如把第二個(gè)判定中的條件y>5錯(cuò)誤寫為y<5,使用上述測(cè)試用例,照樣能按原路徑執(zhí)行而不影響結(jié)果

20、。因此,需要有更強(qiáng)的邏輯覆蓋準(zhǔn)則去檢驗(yàn)判定內(nèi)的條件。條件覆蓋條件覆蓋:設(shè)計(jì)足夠多的測(cè)試用例,使得程序中每個(gè)判定包含的每個(gè)條件的可能取值(真/假)都至少滿足一次。條件覆蓋在實(shí)際程序代碼中,一個(gè)判定中通常都包含若干條件。條件覆蓋的目的是設(shè)計(jì)若干測(cè)試用例,在執(zhí)行被測(cè)程序后,要使每個(gè)判定中每個(gè)條件的可能值至少滿足一次。對(duì)DoWork函數(shù)的各個(gè)判定的各種條件取值加以標(biāo)記。對(duì)于第一個(gè)判定((x>3)&&(z<10)):條件x>3取真值記為T1,取假值記為-T1條件z<10取真值記為T2,取假值記為-T2對(duì)于第二個(gè)判定((x==

21、4)

22、

23、(y>5)):條件x==4取真值記為T3,取假值記為-T3條件y>5取真值記為T4,取假值記為-T4條件覆蓋(續(xù))根據(jù)條件覆蓋的基本思想,要使上述4個(gè)條件可能產(chǎn)生的8種情況至少滿足一次,設(shè)計(jì)測(cè)試用例如下:測(cè)試用例執(zhí)行路徑覆蓋條件覆蓋分支x=4、y=6、z=5abdfT1、T2、T3、T4bdx=2、y=5、z=15acef-T1、-T2、-T3、-T4ce分析:上面這組測(cè)試用例不但覆蓋了4個(gè)條件的全部8種情況,而且將兩個(gè)判定的4個(gè)分支b、c、d、e也同時(shí)覆蓋了,即同時(shí)達(dá)到了條件覆蓋和判定覆蓋。條件覆蓋(續(xù))

24、說(shuō)明:雖然前面的一組測(cè)試用例同時(shí)達(dá)到了條件覆蓋和判定覆蓋,但是,并不是說(shuō)滿足條件覆蓋就一定能滿足判定覆蓋。如果設(shè)計(jì)了下表中的這組測(cè)試用例,則雖然滿足了條件覆蓋,但只是覆蓋了程序中第一個(gè)判定的取假分支c和第二個(gè)判定的取真分支d,不滿足判定覆蓋的要求。測(cè)試用例執(zhí)行路徑覆蓋條件覆蓋分支x=2、y=6、z=5acdf-T1、T2、-T3、T4cdx=4、y=5、z=

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。