測試用例設計 等價類劃分法

2022-05-06 19:42:13 字數 2106 閱讀 6638

1.相關概念

1.1 定義

等價類劃分法

是把所有可能的輸入資料,即程式的輸入域劃分成若干部分(子集),然後從每乙個子集中選取少數具有代表性的資料作為測試用例。該方法是一種重要的,常用的黑盒測試用例設計方法。

1.2 等價類

等價類是某個輸入域的集合,在這個集合中每個輸入條件都是等效的。如果其中乙個的輸入不能導致問題發生,那麼集合中其它輸入條件進行測試也不可能發現錯誤。

等價類分為有效等價類和無效等價類。

有效等價類就是由那些對程式的規格說明有意義的、合理的輸入資料所構成的集合,利用有效等價類可檢驗程式是否實現了規格說明中所規定的功能和效能。

無效等價類就是那些對程式的規格說明不合理的或無意義的輸入資料所構成的集合。

2.劃分等價類的方法

劃分等價類重要的是:集合的劃分,劃分為互不相交的一組子集,而子集的並是整個集合。

下面給出六條確定等價類的原則。

在輸入條件規定了取值範圍或值的個數的情況下,則可以確立乙個有效等價類和兩個無效等價類。例如:成年人每分鐘的心跳60-100之間為正常。

有效等價類:60-100  無效等價類:<60 和 >100

2、在輸入條件規定了輸入值的集合或者規定了「必須如何」的條件的情況下,可確立乙個有效等價類和乙個無效等價類。 例如:使用者連續輸入錯誤密碼的次數最多為3次。

有效等價類:<=3次 無效等價類:>3次

3、在輸入條件是乙個布林量的情況下,可確定乙個有效等價類。

例如:單選的選中與不選中。

4、在規定了輸入資料的一組值(假定n個),並且程式要對每乙個輸入值分別處理的情況下,可確立n個有效等價類和乙個無效等價類。

mdjr(enl0 例如:輸入資料為省份的選擇。

5、在規定了輸入資料必須遵守的規則的情況下,可確立乙個有效等價類(符合規則)和若干個無效等價類(從不同角度違反規則) 。

例如:規定必須輸入非0的正整數。

這種例子應充分考慮規則是否可以拆分為具有單一的子規則,然後得到從不同角度違反規則的無效等價類。

該例子起碼可拆分為非0、數字、正數、整數4個子規則,至少每個規則對應乙個無效等價類,即0、字串、負數、小數,甚至可挖掘出輸入為空的隱含等價類。

6、在確知已劃分的等價類中各元素在程式處理中的方式不同的情況下,則應再將該等價類進一步的劃分為更小的等價類。 例如:核對日期的有效性,初步有效等價類是1<=month<=12,1<=day<=31

可是考慮到2月以及閏年、閏月、長月、短月等,需要進一步細分,當然其中還涉及到了年月日組合的問題。

根據等價類劃分原則,將等價類填入下表。

等價類表

輸入條件

有效等價類

無效等價類

3.測試用例設計原則

根據等價類表,然後從劃分出的等價類中按以下三個原則設計測試用例:

1)、為每乙個等價類規定乙個唯一的編號。

2)、設計乙個新的測試用例,使其盡可能多地覆蓋尚未被覆蓋地有效等價類,重複這一步,直到所有的有效等價類都被覆蓋為止。

3)、設計乙個新的測試用例,使其僅覆蓋乙個尚未被覆蓋的無效等價類,重複這一步,直到所有的無效等價類都被覆蓋為止。

4.等價類劃分法優缺點`

等價類劃分法的優點是考慮了單個輸入域的各類情況,避免了盲目或隨機選取輸入資料的布完整性和覆蓋的不穩定性。

等價類劃分法雖然簡單易用,但是沒有對組合情況進行充分的考慮。需要結合其他測試用例設計的方法進行補充。

5.例項

競猜系統中:投注的金額要求是大於10的正整數。

根據分析等到以下等價類表。

輸入條件

有效等價類

無效等價類

大於10的正整數

大於10正整數

空負數小數

小於10的數

字串

備註:再加上全形狀態下的數

等價類劃分法設計測試用例

等價類劃分法是常用的黑盒測試用例設計方法,測試用例設計時的唯一依據是產品需求文件。一 定義 所謂等價類,是把所有可能的輸入資料,即程式的輸入域劃分為若干子集,然後從每乙個子集中,選取少數具有代表性的資料作為測試用例。等價類分為有效等價類和無效等價類。有效等價類是對程式有效的輸入,無效等價類是其他任何...

等價類劃分法測試用例

等價類是指程式輸入域的子集。思想是 將程式的輸入域劃分為若干個區域 等價類 並在每個等價類中選擇乙個具有代表性的元素生成測試用例。這是黑盒測試用例設計方法 一 劃分等價類 1 有效等價類和無效等價類 有效等價類是指對於程式的規格來說是合理的,有意義的輸入資料構成的集合,可以檢驗程式是否可以實現規格說...

測試用例設計 等價劃分法

等價類即將所有有可能的輸入資料 程式的輸入域 劃分為若干個子集,這些子集具有完備性 無冗餘的特點。然後從每乙個子集裡,選取少數具有代表性的資料作為測試用例值。在設計測試用例的時候,我們要考慮有效等價類 無效等價類兩類。因為軟體不僅要能接受正確的資料,還要能夠接受住錯誤資料的考驗,這樣才能保證軟體的可...