等價類劃分法、邊界值分析法、因果圖法、判定表驅動測試、場景法、功能圖法、錯誤推測法、正交試驗設計法。
在實際測試工作中,往往是綜合使用各種方法才能有效地提高測試效率和測試覆蓋率,這***需要認真掌握這些方法的原理,積累更多的測試經驗,以有效地提高測試水平和測試效率。下面***將主要介紹這8種設計黑盒測試用例的方法。
1、等價類劃分
等價類劃分法是一種典型的、重要的黑盒測試方法,它將程序所有可能的輸入數據(有效的和無效的)劃分成若干個等價類。然后從每個部分中選取具有代表性的數據當做測試用例進行合理的分類,測試用例由有效等價類和無效等價類的代表組成,從而******測試用例具有完整性和代表性。利用這一方法設計測試用例可以不考慮程序的內部結構,以需求規格說明書為依據,選擇適當的典型子集,認真分析和推敲說明書的各項需求,特別是功能需求,盡可能多地發現錯誤。
由于等價類是在需求規格說明書的基礎上進行劃分的,并且等價類劃分不僅可以用來確定測試用例中的數據的輸入輸出的取值范圍,也可以用來準備中間值、狀態和與時間相關的數據以及接口參數等,所以等價類可以用在系統測試、集成測試和組件測試中,在有明確的條件和限制的情況下,利用等價類劃分技術可以設計出完備的測試用例。這種方法可以減少設計一些不必要的測試用例,因為這種測試用例一般使用相同的等價類數據,從而使測試對象得到同樣的反映行為。
2、邊界值分析法
邊界值分析法(BVA,Boundary Value Analysis)是用于對輸入或輸出的邊界值進行測試的一種黑盒測試方法。
在測試過程中,邊界值分析法是作為對等價類劃分法的補充,專注于每個等價類的邊界值,兩者的區別在于前者在等價類中隨機選取一個測試點。邊界值分析法采用一到多個測試用例來測試一個邊界,不僅重視輸入條件邊界值,而且重視輸出域中導出的測試用例。邊界值分析法比較簡單,僅用于考察正處于等價劃分邊界或邊界附近的狀態,考慮輸出域邊界產生的測試情況,針對各種邊界情況設計測試用例,發現更多的錯誤。邊界值分析法的測試用例是由等價類的邊界值產生的,根據輸入輸出等價類,選取稍高于邊界值或稍低于邊界值等特定情況作為測試用例。
3、因果圖法
因果圖法也是較常用的一種黑盒測試方法,是一種簡化了的邏輯圖。因果圖能直觀地表明輸入條件和輸出動作之間的因果關系,能幫助測試人員把注意力集中到與程序功能有關的輸入組合上,比采用等價分類法的測試效率更高,但這種方法的操作步驟比較復雜。
因果圖法是一種適合于描述對于多種輸入條件組合的測試方法,根據輸入條件的組合、約束關系和輸出條件的因果關系,分析輸入條件的各種組合情況,從而設計測試用例的方法,它適合于檢查程序輸入條件涉及的各種組合情況。因果圖法一般和判定表結合使用,通過映射同時發生相互影響的多個輸入來確定判定條件。因果圖法生成的***是判定表,它適合于檢查程序輸入條件的各種組合情況。
采用因果圖法能幫助我們按照一定的步驟選擇一組高效的測試用例,同時,還能指出程序規范中存在什么問題,鑒別和制作因果圖。
4、判定表驅動法
因果圖方法中已經用到了判定表(Decision Table),它是分析和表達多邏輯條件下執行不同操作的情況下的工具。在程序設計發展的初期,判定表***已被當做編寫程序的輔助工具了。由于判定表測試嚴格,能夠將復雜的邏輯關系和多種條件組合的情況表達得既具體又明確,針對不同的邏輯條件組合值,分別執行不同的操作,因此,使用判定表能夠設計出完整的測試用例集合。判定表是一種針對存在條件、動作關系或者因果關系的特性測試的用例設計方法。
5、場景法
現在的軟件幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場景,而同一事件不同的觸發順序和處理結果***形成事件流。這種在軟件設計方面的思想也可以引入到軟件測試中,可以比較生動地描繪出事件觸發時的情景,有利于測試設計者設計測試用例,同時使測試用例更容易理解和執行。
6、功能圖法
功能圖法是用功能圖形象地表示程序的功能說明,由狀態遷移圖和布爾函數組成,同時需要依靠判定表或因果圖表示邏輯功能,并機械地生成功能圖的測試用例。功能圖法是黑盒、白盒混合用例的設計方法。
功能圖模型由狀態遷移圖和邏輯功能模型兩部分構成。
狀態遷移圖:用于表示輸入數據序列以及相應的輸出數據,由輸入數據和當前狀態決定輸出數據和后續狀態。
邏輯功能模型:用于表示在狀態中輸入條件和輸出條件的對應關系,由輸入數據決定輸出數據。此模型只適用于描述靜態說明,輸出數據由輸入數據決定。
7、錯誤推測法
錯誤推測法是基于以往的經驗和直覺,參照以往的軟件系統出現的錯誤,推測程序中所有可能存在的各種缺陷和錯誤,從而有針對性地設計測試用例。
錯誤推測法的基本思路是:列舉出程序中所有可能的錯誤和容易發生錯誤的特殊情況,根據可能出現的錯誤情況選擇測試用例。
8、正交試驗設計法
正交試驗設計法是通過正交試驗理論來指導測試用例的選取,以便能夠用較少的測試用例使測試充分,本方法在系統測試用例的設計中不常用。
正交試驗設計法依據Galois理論,從大量的(實驗)數據(測試用例)中挑選適量的、有代表性的點(例),從而合理地安排實驗(測試)的一種科學實驗設計方法。
該設計方法是使用已經建好的正交表格來安排試驗并進行數據分析的一種方法,目的是用少的測試用例達到的測試覆蓋率。
測評中心 供稿