複製鏈接
請複製以下鏈接發送給好友

等價類劃分

鎖定
等價類劃分,指的是一種典型的、重要的黑盒測試方法。其就是解決如何選擇適當的數據子集來代表整個數據集的問題,通過降低測試的數目去實現“合理的”覆蓋,以此發現更多的軟件缺陷,統計好數據後由此對軟件進行改進升級。
中文名
等價類劃分
類    型
名詞
領    域
信息技術 軟件測試
所屬分類
黑盒測試方法

等價類劃分基本信息

等價類劃分法將程序所有可能的輸入數據(有效的和無效的)劃分成若干個等價類。然後從每個部分中選取具有代表性的數據當做測試用例進行合理的分類,測試用例由有效等價類和無效等價類的代表組成,從而保證測試用例具有完整性和代表性。利用這一方法設計測試用例可以不考慮程序的內部結構,以需求規格説明書為依據,選擇適當的典型子集,認真分析和推敲説明書的各項需求,特別是功能需求,儘可能多地發現錯誤。等價類劃分法是一種系統性的確定要輸入的測試條件的方法。
由於等價類是在需求規格説明書的基礎上進行劃分的,並且等價類劃分不僅可以用來確定測試用例中的數據的輸入輸出的精確取值範圍,也可以用來準備中間值、狀態和與時間相關的數據以及接口參數等,所以等價類可以用在系統測試集成測試和組件測試中,在有明確的條件和限制的情況下,利用等價類劃分技術可以設計出完備的測試用例。這種方法可以減少設計一些不必要的測試用例,因為這種測試用例一般使用相同的等價類數據,從而使測試對象得到同樣的反映行為。對於等價類我們從以下幾個方面討論它的劃分方法。等價類劃分的方法分為兩個主要的步驟,劃分等價類型和設計測試用例。

等價類劃分有效等價類劃分

有效等價類指對於程序規格説明來説,是合理的、有意義的輸入數據構成的集合。利用有效等價類可以檢驗程序是否實現了規格説明預先規定的功能和性能。有效等價類可以是一個,也可以是多個,根據系統的輸入域劃分若干部分,然後從每個部分中選取少數有代表性數據當做數據測試的測試用例,等價類是輸入域的集合。以下是對有效等價類數據集的一些例子。
終端用户輸入的命令
與最終用户交互的系統提示
接受相關的用户文件的名稱
提供初始化值和邊界等
提供格式化輸出數據的命令
在圖形模式(比如鼠標點擊時)提供的數據
失敗時顯示的迴應消息

等價類劃分無效等價類劃分

無效等價類和有效等價類相反,無效等價類是指對於軟件規格説明而言,沒有意義的、不合理的輸入數據集合。利用無效等價類,可以找出程序異常説明情況,檢查程序的功能和性能的實現是否有不符合規格説明要求的地方。以下是無效等價類數據集的一些例子。
在一個不正確的地方提供適當的值。
驗證邊界值
驗證外部邊界的值
用户輸入的命令
最終用户與系統交互的提示
驗證與邊界和外部邊界值的數值數據

等價類劃分等價類劃分的方法

按區間劃分。
按數值劃分。
按數值集合劃分
按限制條件或規劃劃分。
按處理方式劃分

等價類劃分等價類劃分的原則

在輸入條件規定的取值範圍或值的個數的情況下,可以確定一個有效等價類和兩個無效等價類
在規定了輸入數據的一組值中(假定有n個值),並且程序要對每個輸入值分別處理的情況下,可以確定n個有效等價類和一個無效等價類。
在規定輸入數據必須遵守的規則的情況下,可以確定一個有效等價類和若干個無效等價類。
在輸入條件規定了輸入值的集合或規定了“必須如何”的條件下,可以確定一個有效等價類和一個無效等價類。
在確定已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應將該等價類進一步地劃分為更小的等價類。

等價類劃分等價類表的建立

等價類表的建立如表3-1所示。
表3-1是等價類表的基礎,可依據表3-1確定測試用例。測試用例可按下列步驟來確定:
表3-1 等價類表
(1)在分析需求規格説明的基礎上劃分等價類,列出等價類表,為每一個等價類規定一個唯一的編號。
(2)將程序可能的輸入數據分成若干個子集,從每個子集中選取一個有代表性的數據作為測試用例。等價類是某個輸入域的子集,在該子集中的每個輸入數據的作用都是等效的。
(3)設計新的測試用例,使其儘可能多地覆蓋未覆蓋的有效等價類,按照這一步驟重複進行,直到所有的有效等價類都被覆蓋為止。
(4)設計新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,按照這一步驟重複進行,直到所有的無效等價類都被覆蓋為止。
等價類表與測試用例的關係
等價類表與測試用例的關係如表3-2所示。
表3-2等價類表與測試用例的關係表