黑盒測試方法


黑盒測試方法

學習目標
* 掌握等價類划分法
* 掌握邊界值分析法
* 掌握因果圖與決策表法
* 了解正交實驗設計法

黑盒測試是軟件測試中經常使用的一種測試手段,常用的黑盒測試方法包括等價類划分法,邊界值分析法,因果圖與決策表法,正交實驗設計法等,這些方法非常實用,本章將針對黑盒測試常用方法進行詳細的講解。

等價類划分法
等價類划分法是一種常用的黑盒測試方法,它主張從大量的數據中選擇一部分數據用於測試,即盡可能使用最少的測試用例覆蓋最多的數據,以發現更多的軟件缺陷。本節將針對等價類划分法的概念及使用進行詳細的講解。
等價類划分發概述
一個程序可以有多個輸入,等價類划分就是將這些輸入數據按照輸入需求進行分類,將它們划分為若干個子集,這些子集即為等價類,在每個等價類中選擇有代表性的數據設計測試用例。
這種方法類似於學生戰隊,男生站左邊,女生站右邊,老師站中間,這樣就把師生群體划分成了3個等價類。

使用等價類划分法測試程序需要經過划分等價類和設計測試用例2個步驟,具體步驟如下。
1、划分等價類
等價類可分為有效等價類與無效等價類,其含義如下所示。
(1)有效等價類:有效等價類就是有效值的集合,它們是符合程序要求、合理且有意義的輸入數據。
(2)無效等價類:無效等價類就是無效值的集合,它們是不符合程序要求,不合理或無意義的輸入數據。

了解了有效等價類與無效等價類,那么如何划分等價類呢?一般在划分等價類時需要遵循以下原則。

(1)如果程序要求輸入值是一個有限區間的值,則可以將輸入數據划分為1個有效等價類和2個無效等價類,有效等價類指為指定的取值區間,兩個無效等價類分別為有限區間兩邊的值。例如,某程序要求輸入值x的范圍為【1,100】,則有效等價類為1《x<100,無效等價類為x<1和x>100.

(2)如果程序要求輸入的是一個【必須成立】的情況,則可以將輸入數據划分為1個有效等價類和1個無效等價類,例如,某程序要求密碼正確,則正確的密碼為有效等價類,錯誤的密碼為無效等價類。

(3)如果程序要求輸入數據是一組可能的值,或者要求輸入值必須符合某個條件,則可以將輸入數據必須是以數字開頭的字符串,則以數字開頭的字符串是有效等價類,不是以數字開頭的字符串是無效等價類。
(4)如果在某一個等價類中,每個輸入數據在程序中的處理方式都不相同,則應將該等價類划分成更小的等價類,並建立等價表。
同一個等價類中的數據發現程序缺陷的能力是相同的,如果使用等價類中的一個數據不能捕獲缺陷,那么使用等價類中的其它數據也不能捕獲缺陷;
同樣,如果等價類中的一個數據能夠捕獲缺陷,那么該等價類中的其它數據也能捕獲缺陷,即等價類中的所有輸入數據都是等效的。

正確地划分等價類可以極大地降低測試用例地數量,測試會更准確有效。划分等價類時不但要考慮有效等價類,還要考慮無效等價類,對於等價類要認真分析、審查划分,過於粗略地划分可能會漏掉軟件缺陷,如果錯誤地將兩個不同的等價類當作一個等價類,則會遺漏測試情況。例如,某程序要求輸入取值范圍在1-100之間的整數,若一個測試用例輸入了數據0.6,則在測試中很可能只檢測出非整數錯誤,而檢測不出取值范圍的錯誤。

2、設計測試用例
確立了等價類之后,需要建立等價類表列出所有划分出的等價類,用以設計測試用例。基於等價類划分法的測試用例設計步驟如下所示。
(1)確定測試對象,保證非測試對象的正確性
(2)為每個等價類規定一個唯一編號。
(3)設計有效等價類的測試用例,使其盡可能多地覆蓋尚未被覆蓋地有效等價類,直到測試用例覆蓋了所有的有效等價類。
(4)設計無效等價類的測試用例,使其覆蓋所有的無效等價類。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM