一.方法簡介
1.定義:邊界值分析法就是對輸入或輸出的邊界值進行測試的一種黑盒測試方法。通常邊界值分析法是作為對等價類劃分法的補充,這種情況下,其測試用例來自等價類的邊界。
2.與等價劃分的區別
1)邊界值分析不是從某等價類中隨便挑一個作為代表,而是使這個等價類的每個邊界都要作為測試條件。
2)邊界值分析不僅考慮輸入條件,還要考慮輸出空間產生的測試情況。
3.邊界值分析方法的考慮:
長期的測試工作經驗告訴我們,大量的錯誤是發生在輸入或輸出范圍的邊界上,而不是發生在輸入輸出范圍的內部。因此針對各種邊界情況設計測試用例,可以查出更多的錯誤。 使用邊界值分析方法設計測試用例,首先應確定邊界情況。通常輸入和輸出等價類的邊界,就是應著重測試的邊界情況。應當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數據,而不是選取等價類中的典型值或任意值作為測試數據。
4.常見的邊界值
1)對16-bit 的整數而言 32767 和 -32768 是邊界
2)屏幕上光標在最左上、最右下位置
3)報表的第一行和最后一行
4)數組元素的第一個和最后一個
5)循環的第 0 次、第 1 次和倒數第 2 次、最后一次
5.邊界值分析
1)邊界值分析使用與等價類劃分法相同的劃分,只是邊界值分析假定錯誤更多地存在于劃分的邊界上,因此在等價類的邊界上以及兩側的情況設計測試用例。
例:測試計算平方根的函數
--輸入:實數
--輸出:實數
--規格說明:當輸入一個0或比0大的數的時候,返回其正平方根;當輸入一個小于0的數時,顯示錯誤信息"平方根非法-輸入值小于0"并返回0;庫函數Print-Line可以用來輸出錯誤信息。
2)等價類劃分:
I.可以考慮作出如下劃分:
a、輸入 (i)<0 和 (ii)>=0
b、輸出 (a)>=0 和 (b) Error
II.測試用例有兩個:
a、輸入4,輸出2。對應于 (ii) 和 (a) 。
b、輸入-10,輸出0和錯誤提示。對應于 (i) 和 (b) 。
3)邊界值分析:
劃分(ii)的邊界為0和最大正實數;劃分(i)的邊界為最小負實數和0。由此得到以下測試用例:
a、輸入 {最小負實數}
b、輸入 {絕對值很小的負數}
c、輸入 0 d、輸入 {絕對值很小的正數}
e、輸入 {最大正實數}
4)通常情況下,軟件測試所包含的邊界檢驗有幾種類型:數字、字符、位置、重量、大小、速度、方位、尺寸、空間等。
5)相應地,以上類型的邊界值應該在:最大/最小、首位/末位、上/下、最快/最慢、最高/最低、 最短/最長、 空/滿等情況下。
6)利用邊界值作為測試數據
項
|
邊界值
|
測試用例的設計思路
|
字符
|
起始-1個字符/結束+1個字符
|
假設一個文本輸入區域允許輸入1個到255個 字符,輸入1個和255個字符作為有效等價類;輸入0個和256個字符作為無效等價類,這幾個數值都屬于邊界條件值。
|
數值
|
最小值-1/最大值+1
|
假設某軟件的數據輸入域要求輸入5位的數據值,可以使用10000作為最小值、99999作為最大值;然后使用剛好小于5位和大于5位的 數值來作為邊界條件。
|
空間
|
小于空余空間一點/大于滿空間一點
|
例如在用U盤存儲數據時,使用比剩余磁盤空間大一點(幾KB)的文件作為邊界條件。
|