怎麼做獨立路徑的測試

2022-09-05 19:57:16 字數 1460 閱讀 4627

從上面的例子還看出儘管做了語句覆蓋,但是程式仍然可能存在錯誤。語句覆蓋是一種最弱的覆蓋測試,但卻是一種必須做的最低限度的白盒測試。獨立路徑測試可以保證所有語句被執行至少一次,同時排除上述(x=0,y=5/x)組合沒有被執行的情況。在進行獨立路徑測試(基本路徑測試)之前,先介紹流圖符號:

如上圖所示,每乙個圓,稱為流圖的節點,代表乙個或多個語句,流程圖中的處理方框序列和菱形決策框可對映為乙個節點,流圖中的箭頭,稱為邊或連線,代表控制流,類似於流程圖中的箭頭。一條邊必須終止於乙個節點,即使該節點並不代表任何語句,例如,下圖中兩個處理方框交匯處是乙個節點,邊和節點限定的範圍稱為區域。

任何過程設計表示法都可被翻譯成流圖,下面顯示了一段流程圖以及相應的流圖。

(a)流程圖

(b)流圖

注意,程式設計中遇到復合條件時(邏輯or, and, nor等),生成的流圖變得更為複雜,如(c)流圖所示。此時必須為語句if a or b中的每乙個a和b建立乙個獨立的節點。

獨立路徑是指程式中至少引進乙個新的處理語句集合,採用流圖的術語,即獨立路徑必須至少包含一條在定義路徑之前不曾用到的邊。例如圖(b)中所示流圖的乙個獨立路徑集合為:

路徑1:1-11

路徑2:1-2-3-4-5-10-1-11

路徑3:1-2-3-6-8-9-10-11

路徑4:1-2-3-6-7-9-10-1-11

上面定義的路徑1,2,3和4包含了(b)流圖的乙個基本集,如果能將測試設計為強迫執行這些路徑,那麼程式中的每一條語句將至少被執行一次,每乙個條件執行時都將分別取true和false(分支覆蓋)。應該注意到基本集並不唯一,實際上,給定的過程設計可派生出任意數量的不同基本集。如何才能知道需要尋找多少條路徑呢?可以通過如下三種方法之一來計算獨立路徑的上界:

1. v=e-n+2,e是流圖中邊的數量,n是流圖節點數量。

2. v=p+1,p是流圖g中判定節點的數量

3. v=r,r是流圖中區域的數量

例如,(b)流圖可以採用上述任意一種演算法來計算獨立路徑的數量

1. 流圖有4個區域,所以v=4

2. v=11條邊-9個節點+2=4

3. v=3個判定節點+1=4

由此為了覆蓋所有程式語句,必須設計至少4個測試用例使程式執行於這4條路徑。

白盒測試怎麼做 產品的隔音測試怎麼做

我們在產品進入市場,也就是出廠之前,為了判斷產品的聲學效果是否滿足標準要求,都會對產品進行隔音測試,那麼具體的隔音測試要怎麼做呢?建立隔音測試環境 由於工廠車間的環境聲音比較大,或者現有的環境場所滿足不了測試環境的要求,所以會考慮專門建立乙個符合隔音測試的環境場所。常見的隔音測試環境有隔音室 靜音室...

測試應該怎麼做?

測試應該怎麼做?一 首先測試需求分析要全面 測試需求分析具體分兩步 1 測試需求的獲取在測試方法方面,可做如下注意 其一,分析出口入口。從入口分析,將可能出現的環境,條件,操作等內容分類組合,然後根據各位測試達人的方法進行整合,逐一驗證。從出口分析,將可能出現的結果進行統計,根據結果的不同追根溯源,...

介面測試怎麼做

通用介面api規範 保持冪等。也即多次呼叫,應該產生一致的結果,例如轉賬1元,因為呼叫失敗或者超時重試的時候,最終結果還應該是轉賬1元,而非呼叫兩次變成轉賬2元。介面的實現應該盡量避免阻塞,可以使用非同步方式提公升效能。介面應該包括能夠區分不同情況的異常,而非丟擲寬泛的exception,不能吞掉異...