基于覆蓋測試與路徑測試的白盒測試研究_第1頁
基于覆蓋測試與路徑測試的白盒測試研究_第2頁
基于覆蓋測試與路徑測試的白盒測試研究_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

基于覆蓋測試與路徑測試的白盒測試研究

1程序的測試用例白盒測試是對測試單元的內(nèi)部操作的測試方法。根據(jù)程序控制結(jié)構(gòu)設(shè)計,引入了測試用例,主要用于軟件程序的驗證。又稱透明盒測試、邏輯驅(qū)動測試。采用白盒測試應(yīng)全面的了解程序內(nèi)部的邏輯結(jié)構(gòu),對所有的邏輯路徑進(jìn)行測試,是一種窮舉路徑的測試方法。在使用這種方法時,測試者必須檢查程序的內(nèi)部結(jié)構(gòu),從檢查程序的邏輯結(jié)構(gòu)著手,得出測試數(shù)據(jù)。2判定覆蓋的測試用例覆蓋率測試用例設(shè)計方法是一種常用的白盒測試方法。覆蓋率不是目標(biāo),只是一種手段。測試的目標(biāo)是盡可能地去發(fā)現(xiàn)錯誤,去尋找被測試對象與規(guī)定的不一致的地方。目前,比較常用的覆蓋測試用例方法包括語句覆蓋、判定覆蓋、條件覆蓋、組合覆蓋、路徑覆蓋。為了便于理解,我們結(jié)合一個實例來分別講解這幾種方法。(程序如下)根據(jù)程序畫出相應(yīng)的流程圖和流圖如圖1,圖2所示。1)語句覆蓋采用語句覆蓋方法應(yīng)選擇足夠多的測試用例,使程序中的每個可執(zhí)行語句至少執(zhí)行一次。例如上述實例,我們設(shè)計一個能通過流圖中路徑BCEF(執(zhí)行了程序(1)(2)(3)(4)(5)語句)的測試路徑即可。即當(dāng)A=1,B=1,C=3,X=2時程序的五個語句均得到執(zhí)行,完成了語句覆蓋。換句說,測試用例A=1,B=1,C=3,X=2就可以滿足了語句覆蓋。2)判定覆蓋判定覆蓋比語句覆蓋較強一種的方法,它通過執(zhí)行足夠的測試用例,使得程序中的每個判定至少都獲得一次”真”值和”假”值.也稱為”分支覆蓋”。例如上述實例,要滿足判定覆蓋的測試用例就要使程序中的(1)語句和(3)語句獲得一次”真”值和”假”值。判定((A<2)and(B=1))的值至少獲得一次”真”值(例如:A=1,B=1)和”假”值(例如:A=2,B=1);判定((C>2)and(X>1))的值至少獲得一次”真”值(C=3,X=2)和”假”值(C=2,X=2)。于是,我們可以設(shè)計出以下兩組測試用例就可以滿足判定覆蓋。測試用例1:A=1,B=1,C=3,X=2測試用例2:A=2,B=1,C=2,X=23)條件覆蓋條件覆蓋是設(shè)計若干個測試用例,在執(zhí)行測程序以后,要使用每個判定中的每個條件的可能值至少滿足一次.例如上述實例,要滿足條件覆蓋的測試用例,就要滿足以下要求:判定((A<2)and(B=1))中的條件(A<2)的值至少獲得一次”真”值(例如:A=1)和”假”值(例如:A=2),條件(B=1)分的值至少獲得一次”真”值(例如:B=1)和”假”值(例如:B=2)。同理,也要使判定((C>2)and(X>1))中的條件(C>2)的值至少獲得一次”真”值(例如:C=3)和”假”值(例如:C=2),條件(X>1)分的值至少獲得一次”真”值(例如:X=2)和”假”值(例如:X=1)。于是,我們可以設(shè)計出以下兩組測試用例就可以滿足條件覆蓋,測試用例如下:測試用例1:A=1,B=1,C=3,X=2測試用例2:A=2,B=2,C=2,X=14)組合覆蓋組合覆蓋是通過執(zhí)行足夠的測試用例,使得每個判定中的條件的各種可能都至少執(zhí)行一次.因此組合覆蓋的測試用例一定滿足判定覆蓋、條件覆蓋。例如上述實例,要滿足組合覆蓋的測試用例,就要滿足以下要求:對于,判定((A<2)and(B=1))中的條件的各種可能值有:(A<2)、(B=1)兩者的邏輯值同時為真,例如A=1,B=1;(A<2)、(B=1)兩者的邏輯值同時為假,例如A=2,B=2;(A<2)、(B=1)兩者的邏輯值前一個為真,后一個為假,例如A=1,B=2;(A<2)、(B=1)兩者的邏輯值前一個為假,后一個為真,例如A=2,B=1;同理,也要使判定((C>2)and(X>1))中的條件的各種可能值有:(C>2)、(X>1)兩者的邏輯值同時為真,例如C=3,X=2;(C>2)、(X>1)兩者的邏輯值同時為假,例如C=2,X=1;(C>2)、(X>1)兩者的邏輯值前一個為真,后一個為假,例如C=3,X=1;(C>2)、(X>1)兩者的邏輯值前一個為假,后一個為真,例如C=2,X=2;于是,我們可以設(shè)計出以下四組測試用例就可以滿足組合覆蓋,測試用例如下:測試用例1:A=1,B=1,C=3,X=2;測試用例2:A=2,B=2,C=2,X=1;測試用例3:A=1,B=2,C=3,X=1;測試用例4:A=2,B=1,C=2,X=2;5)路徑覆蓋路徑覆蓋是指設(shè)計足夠多的測試用例,要求覆蓋程序中所有的可能的路徑.路徑覆蓋就是從一個程序的入口開始,執(zhí)行所經(jīng)歷的各個語句的完整過程。例如上述實例,要滿足路徑覆蓋的測試用例,就要覆蓋AD、AEF、BCD、BCEF這四條路徑(流圖所示)。于是,我們可以設(shè)計出以下四組測試用例就可以滿足路徑覆蓋,測試用例如下:路徑1AD(1-3-5)測試用例1:A=2,B=2,C=2,X=1;路徑2AEF(1-3-4-5)測試用例2:A=2,B=2,C=3,X=2;路徑3BCD(1-2-3-5)測試用例3:A=1,B=1,C=2,X=1;路徑4BCEF(1-2-3-4-5)測試用例3:A=1,B=1,C=3,X=2;3白盒測試方法本文著重介紹了白盒測試的基本

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論