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

黑盒測(cè)試方法之等價(jià)類

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

1. 黑盒測(cè)試

    不考慮系統(tǒng)或組件的內(nèi)部結(jié)構(gòu),僅關(guān)注系統(tǒng)或組件在特定輸入和一定條件所產(chǎn)生的輸出。黑盒測(cè)試設(shè)計(jì)方法有好多有:等價(jià)類劃分,邊界值分析,判定表,因果圖,      正交實(shí)驗(yàn)法,場(chǎng)景法,狀態(tài)遷移圖,錯(cuò)誤推斷法。

2. 等價(jià)類

2.1定義

    等價(jià)類劃分法是把程序的輸入域劃分成若干部分(子集),然后從每個(gè)部分中選取少數(shù)代表性數(shù)據(jù)作為測(cè)試用例。每一類的代表性數(shù)據(jù)在測(cè)試中的作用等價(jià)于這一類中的其他值。

2.2等價(jià)類

    某個(gè)輸入域的子集。在該子集中,各輸入數(shù)據(jù)對(duì)于揭露程序中的錯(cuò)誤都是等效的。測(cè)試某等價(jià)類的代表值就等于對(duì)這一類其他值的測(cè)試。

2.3等價(jià)類分為有效等價(jià)類和無(wú)效等價(jià)類

    有效等價(jià)類:對(duì)于程序的規(guī)格說(shuō)明來(lái)說(shuō)是合理的、有意義的輸入數(shù)據(jù)構(gòu)成的集合。有效等價(jià)類中是有效輸入,對(duì)于有效輸入,系統(tǒng)預(yù)期返回一個(gè)正確值。測(cè)試有效         屬于確保軟件符合要求。

    無(wú)效等價(jià)類:與有效等價(jià)類的定義恰好相反。無(wú)效等價(jià)類中是無(wú)效輸入,碎玉無(wú)效輸入,系統(tǒng)預(yù)期返回一個(gè)錯(cuò)誤值。測(cè)試無(wú)效輸入能確保軟件具有更高的可靠性。

2.4劃分等價(jià)類原則

    (1)在輸入條件規(guī)定了取值范圍或值得個(gè)數(shù)的情況下,則可以確立有一個(gè)有效等價(jià)類和兩個(gè)無(wú)效等價(jià)類。

    (2) 在輸入條件規(guī)定了輸入值的集合或者規(guī)定了“必須如何”的條件情況下,可確立一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類。

    (3) 在輸入條件是一個(gè)布爾量的情況下,可以確定一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類。布爾量是個(gè)二值枚舉類型,一個(gè)布爾量有兩種狀態(tài):True和False。

    (4)在規(guī)定了輸入數(shù)據(jù)的一組值(假定n個(gè)),并且程序要對(duì)每一個(gè)輸入值分別處理的情況下,可確立n個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類。

    (5)在規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則的情況下,可確立一個(gè)有效等價(jià)類(符合規(guī)則)和若干個(gè)無(wú)效等價(jià)類(從不同角度違反規(guī)則)。

    (6)在確知已劃分的等價(jià)類中各元素在程序處理中的方式不同的情況下,則應(yīng)再將等價(jià)類進(jìn)一步的劃分為更小的等價(jià)類。

2.5等價(jià)類組合

    有多個(gè)等價(jià)類時(shí),要同時(shí)測(cè)這幾個(gè)等價(jià)類。

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

    無(wú)效輸入----每次只測(cè)試一個(gè)無(wú)效輸入,方便定位問(wèn)題所在。

2.6 測(cè)試用例規(guī)則

(1) 為每一個(gè)等價(jià)類規(guī)定一個(gè)唯一的編號(hào)。

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

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



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

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

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