標籤:
以下純屬個人理解;如有什麼不對的請多聯絡指教。
有參考(http://wenku.baidu.com/link?url=R47d3QatLS8UsDWNIlSEOyvgVNFiLr8AZnhiPJ7_ur_sH4xoeZUfjFhL4zjE0P6bpDtqx3L9_2jlrNMJGJJLpgE-5ycrRqbaJ1ZEZckhFum)
4.為什麼要進行等價類別的劃分?等價類別劃分應該遵循哪些原則?
答案:使用等價類別測試方法可以大大減少測試案例的數目,從而提高測試效率。 特點:完備性--劃分出的各個等價類別(子集)並不是輸入/輸出的全集,即程式的定義域/範圍;無冗餘性--各個等價類別是互不相交的一組子集;等價性--劃分的各個子集是由等價關係決定的,即各個輸入資料對於揭露程式中的錯誤都是等效的。
原則: 1)在輸入條件規定了取值範圍的情況下,可確立一個有效等價類別和兩個無效等價類別;
2)在輸入條件規定了輸入值的個數的情況下,可確立一個有效等價類別和兩個無效等價類別; 3)在輸入條件規定了輸入值的集合或者規定了"必須如何"的條件的情況下,可確立一個有效等價類別和多個無效等價類別; 4)在輸入條件是一個布爾量的情況下,可確定一個有效等價類別和一個無效等價類別;
5)在規定了輸入資料的一組值(假定n個),並且程式要對每一個輸入值分別處理的情況下,可確立n個有效等價類別和一個無效等價類別; 6)在規定了輸入資料必須遵守的規則的情況下,可確立一個有效等價類別和多個無效等價類別;
5.針對以下問題:某一種8位電腦,其十六進位常數的定義是以0x或0X開頭的十六進位整數,其取值範圍為-7f~7f(不區分大小寫字母),如0x11、0x2A、-0x3c,請採用等價類別劃分的方法設計測試案例。
答案:min=-7f max=7f
值value 有效等價類別:-7f<=value<=7f;無效等價類別:value< -7f,value > 7f;
6.假定一台ATM機允許提取增量為50元,總金額從100~2000(包含2000)不等的現金,請結合等價類別方法和邊界值分析進行測試。
答案:min=100 max=2000
取值money有效等價類別:100<=money<=2000;(money為50的倍數) 無效等價類別:money<100,money>2000,money不是50的倍數。
測試案例:
7.有一個小學產生績管理系統,要求把成績好的同學放在前面,其中每個人都有三門課程成績:語文,數學,英語。首先是按個人的總成績進行排名,如果兩個人的總分相等則按他們的語文成績進行排名,如果總成績和語文成績都想同,則按照他們的數學成績排名,請用等價類別方法進行排名。
答案:總成績total,語文:Chinese,數學:math,英語:English
有效類:Ta≠Tb,按總成績total排名 Ta=Tb && Ca≠Cb,按語文成績(Chinese)排名 Ta=Tb && Ca=Cb && Ma≠Mb按數學成績(math)排名;
無效類:Ta=Tb && Ca=Cb && Ma=Mb。
思考題:有20個輸入量,其中有3個是多缺陷,17個是單缺陷,求總測試案例數量。
答案:弱一般等價類別測試:17+3=20
強一般等價類別測試:17*3=51
弱健壯等價類別測試:3x17+3x3x3=78
強健壯等價類別測試:3x17*3x3x3=1377
附:
弱一般等價類別:單缺陷假設,不討論異常地區強一般等價類別:多缺陷假設,不考慮異常地區弱健壯等價類別:單缺陷假設,要考慮異常地區強健壯等價類別:多缺陷假設,要考慮異常地區;即一個全笛卡爾乘積
軟體測試技術----黑箱測試