一、 黑盒測試:是一種常用的軟件測試方法,它將被測軟件看作一個打不開的黑盒,主要根據功能需求設計測試用例,進行測試。
幾種常用的黑盒測試方法和黑盒測試工具有,等價類划分法、邊界值分析法、因果圖法、決策表法。在實際運用中要選擇合適的方法。
一. 因果圖法方法簡介
1.定義:是一種利用圖解法分析輸入的各種組合情況,從而設計測試用例的方法,它適合於檢查程序輸入條件的各種組合情況。
2.因果圖法產生的背景:
等價類划分法和邊界值分析方法都是着重考慮輸入條件,如果程序輸入之間沒有什么聯系,采用等價類划分和邊界值分析是一種比較有效的方法。但等邊值分析沒有考慮輸入條件的各種組合、輸入條件之間的相互制約關系,例如,約束關系、組合關系。這樣雖然各種輸入條件可能出錯的情況已經測試到了,但多個輸入條件組合起來可能出錯的情況卻被忽視了,測試效果難以保障,因此必須考慮使用一種適合於描述對於多種條件的組合,產生多個相應動作的測試方法,如果在測試時必須考慮輸入條件的各種組合,則可能的組合數目將是天文數字,因此必須考慮采用一種適合於描述多種條件的組合、相應產生多個動作的形式來進行測試用例的設計,這就需要利用因果圖(邏輯模型)。因果圖法着重測試規格說明中的輸入與輸出間的依賴關系。
1、 因果圖的符號的關系
以下是符號的具體說明:
原因→結果
原因→原因
結果→結果
2、因果圖法測試用例的設計步驟
(1)確定軟件規格(需求)中的原因和結果
(2)確定原因和結果之間的邏輯關系
(3)確定因果圖中的各個約束(constraints)
(4)畫出因果圖並轉換為決策表
(5)根據決策表設計測試用例
三、實例分析
產品說明書:有一個處理單價為1元5角錢的盒裝飲料的自動售貨機軟件。若投入1元5角硬幣,按下“可樂”、“雪碧”、或“紅茶”按鈕,相應的飲料就送出來。若投入的是2元硬幣,在送出飲料的同時退還5角硬幣。
(1)確定需求中的原因與結果
(2)確定原因與結果 的邏輯關系
C1 與 C2 需要一個中間結果Cm1, C3、C4、C5 需要一個中間結果Cm2.
(3)確定因果圖中的約束
C1 與 C2 是或的關系, C3、C4、C5 是或的關系。
(4)畫出因果圖並轉化為決策表
決策表
將原因C1、C2、C3、C4、C5按二進制由小到大分別取值,並分析中間結果的成立與否,進而得出下面的簡化版(即中間結果Cm1、Cm2成立的情況)
簡化版
(5)根據決策表設計測試用例