首頁技術(shù)文章正文

黑盒測試方法之等價類

更新時間:2018-09-26 來源:黑馬程序員技術(shù)社區(qū) 瀏覽量:

1. 黑盒測試

    不考慮系統(tǒng)或組件的內(nèi)部結(jié)構(gòu),僅關(guān)注系統(tǒng)或組件在特定輸入和一定條件所產(chǎn)生的輸出。黑盒測試設(shè)計(jì)方法有好多有:等價類劃分,邊界值分析,判定表,因果圖,      正交實(shí)驗(yàn)法,場景法,狀態(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)再將等價類進(jìn)一步的劃分為更小的等價類。

2.5等價類組合

    有多個等價類時,要同時測這幾個等價類。

    有效輸入----所有輸入域都取有效值,期待系統(tǒng)運(yùn)行正常。

    無效輸入----每次只測試一個無效輸入,方便定位問題所在。

2.6 測試用例規(guī)則

(1) 為每一個等價類規(guī)定一個唯一的編號。

(2) 設(shè)計(jì)一個新的測試用例,使其盡可能多的覆蓋尚未被覆蓋的有效類。重復(fù)這一步,直到所有的有效等價類都被覆蓋為止。

(3) 設(shè)計(jì)一個新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,重復(fù)這一步,直到所有的無效等價類被覆蓋為止。



作者:黑馬程序員PHP+H5全棧工程師培訓(xùn)學(xué)院

首發(fā):http://php.itheima.com

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!