更新時間:2018-09-26 來源:黑馬程序員技術(shù)社區(qū) 瀏覽量:
1. 黑盒測試
不考慮系統(tǒng)或組件的內(nèi)部結(jié)構(gòu),僅關(guān)注系統(tǒng)或組件在特定輸入和一定條件所產(chǎn)生的輸出。黑盒測試設(shè)計方法有好多有:等價類劃分,邊界值分析,判定表,因果圖, 正交實驗法,場景法,狀態(tài)遷移圖,錯誤推斷法。
2. 等價類
2.1定義
等價類劃分法是把程序的輸入域劃分成若干部分(子集),然后從每個部分中選取少數(shù)代表性數(shù)據(jù)作為測試用例。每一類的代表性數(shù)據(jù)在測試中的作用等價于這一類中的其他值。
2.2等價類
某個輸入域的子集。在該子集中,各輸入數(shù)據(jù)對于揭露程序中的錯誤都是等效的。測試某等價類的代表值就等于對這一類其他值的測試。
2.3等價類分為有效等價類和無效等價類
有效等價類:對于程序的規(guī)格說明來說是合理的、有意義的輸入數(shù)據(jù)構(gòu)成的集合。有效等價類中是有效輸入,對于有效輸入,系統(tǒng)預(yù)期返回一個正確值。測試有效 屬于確保軟件符合要求。
無效等價類:與有效等價類的定義恰好相反。無效等價類中是無效輸入,碎玉無效輸入,系統(tǒng)預(yù)期返回一個錯誤值。測試無效輸入能確保軟件具有更高的可靠性。
2.4劃分等價類原則
(1)在輸入條件規(guī)定了取值范圍或值得個數(shù)的情況下,則可以確立有一個有效等價類和兩個無效等價類。
(2) 在輸入條件規(guī)定了輸入值的集合或者規(guī)定了“必須如何”的條件情況下,可確立一個有效等價類和一個無效等價類。
(3) 在輸入條件是一個布爾量的情況下,可以確定一個有效等價類和一個無效等價類。布爾量是個二值枚舉類型,一個布爾量有兩種狀態(tài):True和False。
(4)在規(guī)定了輸入數(shù)據(jù)的一組值(假定n個),并且程序要對每一個輸入值分別處理的情況下,可確立n個有效等價類和一個無效等價類。
(5)在規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則的情況下,可確立一個有效等價類(符合規(guī)則)和若干個無效等價類(從不同角度違反規(guī)則)。
(6)在確知已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應(yīng)再將等價類進一步的劃分為更小的等價類。
2.5等價類組合
有多個等價類時,要同時測這幾個等價類。
有效輸入----所有輸入域都取有效值,期待系統(tǒng)運行正常。
無效輸入----每次只測試一個無效輸入,方便定位問題所在。
2.6 測試用例規(guī)則
(1) 為每一個等價類規(guī)定一個唯一的編號。
(2) 設(shè)計一個新的測試用例,使其盡可能多的覆蓋尚未被覆蓋的有效類。重復(fù)這一步,直到所有的有效等價類都被覆蓋為止。
(3) 設(shè)計一個新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,重復(fù)這一步,直到所有的無效等價類被覆蓋為止。
作者:黑馬程序員PHP+H5全棧工程師培訓學院
首發(fā):http://php.itheima.com