一、什么是等價類?為什么要划分等價類 ?
所謂等價類是指輸入域的某個互不相交的子集合,所有等價類的並集便是整個輸入域。目的在於測試用例的無冗余性。
等價類划分是一種典型的黑盒測試方法,使用這一方法時,完全不考慮程序的內部結構,只依據程序的規格說明來設計測試用例。
等價類划分方法把所有可能的輸入數據,即程序的輸入域划分成若干部分,然后從每一部分中選取少數有代表性的數據做為測試用例。
使用這一方法設計測試用例要經歷划分等價類(列出等價類表)和選取測試用例兩步。
划分等價類( valid / invalid )
(1)有效等價類:檢驗程序是否實現了規格說明預先規定的功能和性能。
(2)無效等價類:檢查軟件功能和性能的實現是否有不符合規格說明要求的地方。
二、等價類划分的規則
(1)按區間划分。(2)按數值划分。(3)按數值集合划分。(4)按限制條件或規划划分。 (5)按處理方式划分。
在輸入條件規定的取值范圍或值的個數的情況下,可以確定一個有效等價類和兩個無效等價類。
在規定了輸入數據的一組值中(假定有n個值),並且程序要對每個輸入值分別處理的情況下,可以確定n個有效等價類和一個無效等價類。
在規定輸入數據必須遵守的規則的情況下,可以確定一個有效等價類和若干個無效等價類。
在輸入條件規定了輸入值的集合或規定了“必須如何”的條件下,可以確定一個有效等價類和一個無效等價類。
在確定已划分的等價類中各元素在程序處理中的方式不同的情況下,則應將該等價類進一步地划分為更小的等價類。
三、等價類划分的示例
1)划分等價類並編號,下表等價類划分的結果
2)設計測試用例,以便覆蓋所有的有效等價類,
為每一個無效等價類設計一個測試用例,設計結果如下
