目前黑盒測試的測試用例設計方法有5種:
等價(jià)類(lèi)劃分
邊界值分析
錯誤推測法
因果圖
功能圖
一、等價(jià)類(lèi)劃分
等價(jià)列劃分設計方法是把所有可能的輸入數據,即程序的輸入域劃分成若干部分(子集),然后從每一個(gè)子集中選取少量具有代表性的數據作為測試用例。
等價(jià)類(lèi)是指某個(gè)輸入域的子集合。在該子集合中,各個(gè)輸入數據對于揭露程序中的錯誤都是等效的。并合理地假定:測試某等價(jià)類(lèi)的代表值就等于對這一類(lèi)其他值的測試。
等價(jià)類(lèi)劃分有兩種不同的情況:有效等價(jià)類(lèi)和無(wú)效等價(jià)類(lèi)。設計時(shí)要同時(shí)考慮這兩種等價(jià)類(lèi)。
下面給出6條確定等價(jià)類(lèi)的原則:
在輸入條件規定了取值范圍或值的個(gè)數的情況下,則可以確立一個(gè)有效等價(jià)類(lèi)和兩個(gè)無(wú)效等價(jià)類(lèi)。
在輸入條件規定了輸入值的集合或者規定了“必須如何”的條件的情況下,則可以確立一個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi)。
在輸入條件是一個(gè)布爾量的情況下,可以確立一個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi)。
在規定了輸入數據的一組值(假定n個(gè)),并且程序要對每一個(gè)輸入值分別處理的情況下,可以確立n個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi)。
在規定了輸入數據必須遵守的規則的情況下,可以確立一個(gè)有效等價(jià)類(lèi)(符合規則)和若干個(gè)無(wú)效等價(jià)類(lèi)(從不同角度違反規則)。
在確知已劃分的等價(jià)類(lèi)中各元素在程序處理中的方式不同的情況下,則應再將該等價(jià)類(lèi)進(jìn)一步的劃分為更小的等價(jià)類(lèi)。
在確立了等價(jià)類(lèi)后,可建立等價(jià)類(lèi)表,列出所有劃分出的等價(jià)類(lèi)。然后從劃分出的
等價(jià)類(lèi)中按以下的3個(gè)原則設計測試用例:
為每一個(gè)等價(jià)類(lèi)規定一個(gè)唯一的編號
設計一個(gè)新的測試用例,使其盡可能多的覆蓋尚未被覆蓋的有效等價(jià)類(lèi),重復這一步,直到所有的有效等價(jià)類(lèi)都被覆蓋為止。
設計一個(gè)新的測試用例,使其僅覆蓋一個(gè)尚未被覆蓋的無(wú)效等價(jià)類(lèi),重復這一步,直到所有的無(wú)效等價(jià)類(lèi)都被覆蓋為止。
例:程序規定;輸入三個(gè)整數作為三邊的邊長(cháng)構成三角形。當此三角形為一般三角形、等腰三角形、等邊三角形時(shí),分別作計算。用等價(jià)類(lèi)劃分方法為該程序進(jìn)行測試用例設計。
解:設a、b、c代表三角形的三條邊。
1)分析題目中給出的和隱含的對輸入條件的要求:
a) 整數
b) 3個(gè)數
c) 非零數
d) 正數
e) 兩邊之和大于第三邊
f) 等腰
g) 等邊
2)列出等價(jià)類(lèi)表并編號
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/