軟件測試技術(shù):軟件測試基礎(chǔ)

軟件測試技術(shù):軟件測試基礎(chǔ)

ID:37467817

大?。?17.00 KB

頁數(shù):58頁

時間:2019-05-12

軟件測試技術(shù):軟件測試基礎(chǔ)_第1頁
軟件測試技術(shù):軟件測試基礎(chǔ)_第2頁
軟件測試技術(shù):軟件測試基礎(chǔ)_第3頁
軟件測試技術(shù):軟件測試基礎(chǔ)_第4頁
軟件測試技術(shù):軟件測試基礎(chǔ)_第5頁
資源描述:

《軟件測試技術(shù):軟件測試基礎(chǔ)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第二章軟件測試基礎(chǔ)?2.1軟件測試白箱法–2.1.1邏輯覆蓋法?語句覆蓋?判斷覆蓋?條件覆蓋?條件組合覆蓋?判斷/條件覆蓋?路徑覆蓋–2.1.2基本路徑測試第二章軟件測試基礎(chǔ)?2.2軟件黑箱測試法–2.2.1等價分類法–2.2.2邊界值分析法?小結(jié)2.1軟件測試白箱法?定義:–白箱法是以程序的內(nèi)部邏輯為依據(jù)。合理的白箱測試,就是要選取足夠的測試用例,對源代碼進行比較充分的覆蓋,以便盡可能多地發(fā)現(xiàn)程序中的錯誤。?白箱法適用范圍:–主要用于模塊測試、?測試等。?兩種方法:–邏輯覆蓋法和基本路徑法兩種。2.1.1邏輯覆蓋法aTc(A>1)∧(B=0)FX=X/AbTe(A=2)∨

2、(X>1)X=X+1Fd2-1一個被測程序結(jié)構(gòu)圖2.1.1邏輯覆蓋法?語句覆蓋:–語句覆蓋的含義是指在測試的過程中,軟件測試者應(yīng)選擇足夠多的測試用例,使被測試程序中每個語句至少執(zhí)行一次。?例子:–在圖2-1所示的流程圖中,正好所有的可執(zhí)行語句都在路徑L1上,故選擇路徑L1設(shè)計測試用例,就可以覆蓋所有的可執(zhí)行語句。滿足本例的測試用例是:[(2,0,4),(2,0,3)]覆蓋ace[L]。1?問題:–本測試用例實際上只測試了條件為真的情況,如果條件為假,則使用本測試用例顯然不能發(fā)現(xiàn)問題。此外,當?shù)谝粋€判斷中的邏輯符“?”寫成“?”,或者第二個判斷中的邏輯符號“?”寫成“?”時,

3、本測試用例也不能查出上述錯誤。所以,語句覆蓋是最弱的邏輯覆蓋準則。?判斷覆蓋:–在測試的過程中,軟件測試者應(yīng)設(shè)計若干測試用例,并運行所測程序,使被測試程序中每個判斷的真分支和假分支至少經(jīng)歷一次。?例如–在圖2-1所示的流程圖中,如果選擇路徑L,L,則可滿足判12斷覆蓋,其測試用例如下:–[(2,0,4),(2,0,3)]覆蓋ace[L]1–[(1,1,1),(1,1,1)]覆蓋abd[L]。2–如果選擇路徑L和L,則可得另一組測試用例:34–[(2,1,1),(2,1,2)]覆蓋abe[L]3–[(3,0,3),(3,1,1)]覆蓋acd[L]。4?問題:–由此看來,測試用

4、例的取法并不是唯一的。此外,若把圖2-1所示流程中的第二個判斷中的條件X>1錯些成X<1,那么利用上面兩組測試用例,仍能得到同樣的結(jié)果。這表明:只是判斷覆蓋不能確保一定能查出在判斷的條件中存在的錯誤。?條件覆蓋:–用條件覆蓋所設(shè)計的測試用例可使得程序中的每一個判斷的每一個條件的可能取值至少執(zhí)行一次。?例如:–在圖2-1所示的流程中,事先可對所有條件的取值加以標注,比如:–對第一個判斷,若條件A>1成立,則取真值為T,1反之,取假值為~T;若條件B=0成立,則取真值1為T,反之,取假值為~T。22–對第二個判斷,若條件A=2成立,則取真值為T,3反之,取假值為~T;若條件X>

5、1成立,則取真值3為T,反之,取假值為~T。44測試用例通過路徑條件取值覆蓋分支[(2,0,4)(2,0,3)]ace(L)TTTT11234c,e[(1,0,1)(1,0,1)]abd(L2)~T1T2~T3~T4b,d[(2,1,1)(2,1,2)]abe(L)T~TT~Tb,e31234測試用例通過路徑條件取值覆蓋分支[(1,0,3)(1,0,4)]abe(L)~TT~TTb,e31234[(2,1,1)(2,1,2)]abe(L)T~TT~Tb,e31234?問題:–比較這兩組測試用例可以發(fā)現(xiàn),第一組測試用例不僅覆蓋了所有判斷的取真分支和取假分支,而且覆蓋了判斷中條

6、件的可能取值;第二組測試用例雖然滿足了條件覆蓋,但由于只覆蓋了第一個判斷的取假分支和第二個判斷的取真分支,不滿足判定覆蓋的要求。為此,必須引入更強的覆蓋,即判定-條件覆蓋。?判斷-條件覆蓋:–用判斷-條件覆蓋所設(shè)計的測試用例能夠使得判斷中每一個條件的所有可能取值至少執(zhí)行一次,同時每個判斷的所有可能判斷結(jié)果至少執(zhí)行一次。?例如:測試用例通過路徑條件取值覆蓋分支[(2,0,4)(2,0,3)]ace(L)TTTTc,e11234[(1,1,1)(1,1,1)]abd(L2)~T1~T2~T3~T4b,d?問題:–從表面上看,它測試了所有條件的取值,但事實并非如此。這是由某些條件

7、覆蓋了另一些條件所致,比如對于條件表達式(A>1)and(B=0)來說,若(A>1)的測試結(jié)果為真,則還要測試(B=0),才能決定表達式的值;而若(A>1)的測試結(jié)果為假,可以立刻確定表達式的結(jié)果為假。這時,往往就不再測試(B=0)的取值了,因此,條件(B=0)就沒有檢查。同樣,對于條件表達式(A=2)or(X>1)來說,若(A=2)的測試結(jié)果為真,就可以立刻確定表達式的結(jié)果為真。這時,條件(X>1)就沒有檢查。因此,采用判斷-條件覆蓋,也不一定能查出邏輯表達式中的錯誤。?條件組合覆蓋–能夠使得每個判斷的所有可能的

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

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

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