申請免費試用、咨詢電話:400-8352-114
在邏輯覆蓋的測試技術中,以上只討論程序內(nèi)部有判定存在的邏輯結(jié)構(gòu)的測試用例設計技術。而循環(huán)也是程序的主要結(jié)構(gòu),要覆蓋也是程序的主要結(jié)構(gòu),要覆蓋含有循環(huán)結(jié)構(gòu)的所有路徑是不可能的,但可通過限制循環(huán)次數(shù)來測試,下面給設計原則供參考:
對最內(nèi)層循環(huán)做簡單循環(huán)的全部測試。所有其它層的循環(huán)變量置為最小值;
逐步外推,對其外面一層循環(huán)進行測試。測試時保持所有外層循環(huán)的循環(huán)變量取最小值,所有其它嵌套內(nèi)層循環(huán)的循環(huán)變量取典型值。
反復進行,直到所有各層循環(huán)測試完畢。
例子很簡單,只有四條路徑。但在實際問題中,一個不太復雜的程序其路徑是一個龐大的數(shù)字。為解決這一難題,只得把覆蓋的路徑數(shù)壓縮到一定的限度內(nèi),例如,循環(huán)體只執(zhí)行一次。基本路徑測試是在程序控制流程圖的基礎上,通過分析控制構(gòu)造的環(huán)路復雜性,導基本路徑集合,從而設計測試用例,保證這些路徑至少通過一次。
基本路徑測試的步驟為:
以詳細設計或源程序為基礎,導致控制流程圖的拓撲結(jié)構(gòu)程序。
程序陶是退化的程序流程網(wǎng),它是反映控制流程的有向圖,其中小網(wǎng)糊稱為結(jié)點,代表流程圖中每個處理符號(矩形、菱形框)有箭頭的連線表示控制流向,稱為程序刳中的邊或路徑。
是一個程序流程剽,可以將它轉(zhuǎn)換成的程序圖(假設菱形框表示的判斷內(nèi)設有覆合的條件)。在轉(zhuǎn)換時注意以下幾點:
條邊必須終止于一個結(jié)點,在選擇結(jié)構(gòu)中的分支匯聚處即使無語句也應有匯聚點。
判斷中的邏輯表達式是復合條件,應分解為一系列只有單個條件的嵌套判斷,如對于復合條件的判定應出的程序圖。