1. 程式人生 > >等價類劃分詳解

等價類劃分詳解

一.等價類劃分法

1.   等價類劃分定義:將所有的輸入域,劃分為若干個子集,從每個子集中選取少量的具有代表性的資料作為測試用例。

可劃分為兩種等價類:有效等價類和無效等價類

有效等價類:完全滿足產品規格說明的資料,有效的,有意義的的輸入資料集合

無效等價類:不滿足程式的程式的輸入要求或者無效的輸入資料構成的集合

2.   等價類的劃分方法:

1>.輸入值規定了取值範圍或者對輸入資料個數有規定,可劃分為一個有效等價類和兩個無效等價類,;

eg:輸入學生成績:0~100,有效等價類為輸入值為“0~100”,無效等價類為:輸入值>100     and   輸入值<100

eg:規定輸入三角形的邊,有效等價類:輸入邊數  3

                                        無效等價類:輸入邊數>3 and  輸入邊數<3

2>.輸入值已規定了“必須如何”條件的情況下,可劃分為一個有效等價類和一個無效等價類;

 eg:輸入‘張三’的姓名,有效等價類為:“張三”,無效等價類為:費張三的任何字元內容

3>.輸入值為布林條件的情況下,可劃分為一個有效等價類和一個無效等價類;

 eg:輸入值>10,有效等價類為:大於10 的任何一個數字,無效等價類為:小於10的任何一個數字

4>.規定輸入資料的一組值n個,並且程式對每個輸入值分別處理的情況下,可確定n個有效等價類和一個無效等價類;

  eg:規定輸入學科條件說明學歷可為:碩士,本科,大專三種之一,則把這三個值確定3個有效等價類,把這三個學歷之外的任何學歷作為無效等價類

5>在規定輸入資料必須遵守幾個規則的情況下,可確認若干個有效等價類(遵守規則)若干個無效等價類(從不同角度違反規則)

eg:電子郵件規則:必須包含@,@後格式為x.y,地址中不能包含符號:#¥%

6>在確認已劃分的等價類中各元素在程式處理中的方式不同的情況下,可將該等價類劃分為更小的等價類

 eg:成績及格的學生評級,80>成績>60:一般;90>成績>80:良好;

100>成績>90:優秀;