等價類劃分
邊界值分析
錯誤推測法
因果圖
功能圖
一、等價類劃分
等價列劃分設計方法是把所有可能的輸入數據,即程序的輸入域劃分成若干部分(子集),然后從每一個子集中選取少量具有代表性的數據作為測試用例。
等價類是指某個輸入域的子集合。在該子集合中,各個輸入數據對于揭露程序中的錯誤都是等效的。并合理地假定:測試某等價類的代表值就等于對這一類其他值的測試。
等價類劃分有兩種不同的情況:有效等價類和無效等價類。設計時要同時考慮這兩種等價類。
下面給出6條確定等價類的原則:
在輸入條件規定了取值范圍或值的個數的情況下,則可以確立一個有效等價類和兩個無效等價類。
在輸入條件規定了輸入值的集合或者規定了“必須如何”的條件的情況下,則可以確立一個有效等價類和一個無效等價類。
在輸入條件是一個布爾量的情況下,可以確立一個有效等價類和一個無效等價類。
在規定了輸入數據的一組值(假定n個),并且程序要對每一個輸入值分別處理的情況下,可以確立n個有效等價類和一個無效等價類。
在規定了輸入數據必須遵守的規則的情況下,可以確立一個有效等價類(符合規則)和若干個無效等價類(從不同角度違反規則)。
在確知已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應再將該等價類進一步的劃分為更小的等價類。
在確立了等價類后,可建立等價類表,列出所有劃分出的等價類。然后從劃分出的
等價類中按以下的3個原則設計測試用例:
為每一個等價類規定一個唯一的編號
設計一個新的測試用例,使其盡可能多的覆蓋尚未被覆蓋的有效等價類,重復這一步,直到所有的有效等價類都被覆蓋為止。
設計一個新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,重復這一步,直到所有的無效等價類都被覆蓋為止。
例:程序規定;輸入三個整數作為三邊的邊長構成三角形。當此三角形為一般三角形、等腰三角形、等邊三角形時,分別作計算。用等價類劃分方法為該程序進行測試用例設計。
解:設a、b、c代表三角形的三條邊。
1)分析題目中給出的和隱含的對輸入條件的要求:
a) 整數
b) 3個數
c) 非零數
d) 正數
e) 兩邊之和大于第三邊
f) 等腰
g) 等邊
2)列出等價類表并編號
3)列出覆蓋上述等價類的測試用例,如下表:
二、邊界值分析法
使用邊界值分析方法設計測試用例,首先:應確定邊界情況。通常輸入和輸出等價類的邊界,就是應著重測試的邊界情況。其次,應但選取正好等于、剛剛大于或剛剛小于邊界的值作為測試數據,而不是選取等價類中的典型值或任意值作為測試數據。
基于邊界值分析方法選擇測試用例的原則:
如果輸入條件規定了值的范圍,應取剛達到這個范圍的邊界值,以及剛剛超過這個范圍邊界的值作為測試輸入的數據。
如果輸入條件規定了值的個數,應用最大個數、最小個數、比最小個數少一、比最大個數多一的數作為測試輸入的數據。
根據規格說明的每個輸出條件,使用前面的原則1。
根據規格說明的每個輸出條件,使用前面的原則2。
如果程序的規格說明給出的輸入域或輸出域是有序集合,則應選取集合的第一個元素和最后一個元素作為測試用例數據。
如果程序中使用了一個內部數據結構,應當選擇這個內部數據結構邊界上的值作為測試用例。
分析規格說明,找出其他可能的邊界條件。
三、錯誤推測法
錯誤推測法就是根據經驗和直覺推測程序中所有可能存在的各種錯誤,從而有針對性地設計測試用例的方法。
原文轉自:http://www.uml.org.cn/Test/200603202.htm