軟件測試重點之等價類劃分
94 2017-05-23
等價類是指某個輸入域的子集合
在該子集合中,各個輸入數(shù)據(jù)對于揭露程序中的錯誤都是等效的,子集合中包含的元素要么全部被正確處理,要么全部都沒有被正確處理。因此,可以把全部的輸入數(shù)據(jù)劃分成若干的等價類,在每一個等價類中取一個數(shù)據(jù)來進行測試。這樣就能以較少的具有代表性的數(shù)據(jù)進行測試,而取得較好的測試效果。等價類劃分是將程序的輸入域(較多見)或輸出域(較少見)的不同區(qū)間劃分為不同的數(shù)據(jù)類,以便導出測試用例
有效等價類
對于程序的需求說明來說是合理的,有意義的輸入數(shù)據(jù)所構成的集合利用它可以檢驗程序是否實現(xiàn)了預期的功能和性能(確認過程)
無效等價類
對于程序的需求說明來說是不合理的,沒有意義的輸入數(shù)據(jù)所構成的集合利用它可以檢驗程序對于無效數(shù)據(jù)的處理能力(驗證過程)
如果輸入條件規(guī)定了取值范圍,或者值的個數(shù),則可以確立一個有效等價類和兩個無效等價類如果輸入條件是一個布爾量,則可以確立一個有效等價類和一個無效等價類
如果規(guī)定了輸入數(shù)據(jù)的一組值,而且程序要對每一個輸入值分別進行處理,這時要對每一個規(guī)定的輸入值確立一個有效等價類,而對于這組值之外的所有值確立一個無效等價類
如果規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則,則可以確立一個有效等價類(即遵守規(guī)則的數(shù)據(jù))和若干無效等價類(從不同角度違反規(guī)則的數(shù)據(jù)),例如:
測試密碼域,要求密碼必須是數(shù)字或字母有效等價類為―密碼是數(shù)字和字母的組合‖(還可以細分)無效等價類為―密碼包括中文‖、―密碼包括其它符號‖等
如果確知已劃分的等價類中的各元素在程序中的處理方式不同(例如字母還要區(qū)分大小寫等),則應進一步劃分成更小的等價類
針對是否對無效數(shù)據(jù)進行測試,可以將等價類測試分為標準等價類測試和健壯等價類測試。標準等價類測試——不考慮無效數(shù)據(jù)值,測試用例使用
每個等價類中的一個值。健壯等價類測試——主要的出發(fā)點是考慮了無效等價類。對有效輸入,測試用例從每個有效等價類中取一個值;
對無效輸入,一個測試用例有一個―無效值‖,其他值均取―有效值‖。健壯等價類測試存在兩個問題:
(1)需要花費精力定義無效測試用例的期望輸出(2)對強類型的語言沒有必要考慮無效的輸入,程序可以自己檢測。
請聯(lián)系網(wǎng)站客服,了解詳細的課程信息~
優(yōu)質、便捷、省心
掃一掃
獲取更多福利
獵學網(wǎng)企業(yè)微信
獵學網(wǎng)訂閱號
獵學網(wǎng)服務號