3-3.2邊界值分析法
邊界值分析法(BoundaryValueAnalysis, BVA)是用於對輸人或輸出的邊界值進行測試 的一種典型、重要的黑盒測試方法。在測試過程中,邊界值分析法是作為對等價類劃分法的補充,專注於每個等價類的邊界值,兩者的區別在於前者在等價類中隨機選取一個測試點。
邊界值分析法採用一到多個測試用例來測試一個邊界,不僅重視輸入條件邊界值,而且重視輸出域中導出的測試用例。邊界值分析法比較簡單,僅用於考查正處於等價劃分邊 界或邊界附近的狀態,考慮輸出域邊界產生的測試情況,針對各種邊界情況設計測試用例,以發現更多的錯誤。邊界值分析法的測試用例是由等價類的邊界值產生的,根據輸入輸出等價類,選取稍髙於邊界值或稍低於邊界值等特定情況作為測試用例。
1.邊界值分析法的依據
•人們從長期的測試工作經驗得知,大量的錯誤發生在輸入和輸出範圍的邊界上,而不是在輸入範圍內部。
•針對各種邊界情況設計測試用例,可以發現更多的錯誤。
•確定邊界情況,著重測試輸入等價類、輸出等價類的邊界值。
2.常見的邊界值
通常情況下,軟件測試中邊界檢測包含以下類型••數字、字符、位置、質量、方位、尺寸、空間等。與上述類型相對應的邊界值檢測為最大/最小、首位/末位、 上/下、最重/最輕、最快/最慢、最高/最低、最短/最長、滿/空等。常見的邊界值通常表現在界面屏幕、數組、報表和循環等方面。它的表現方式如下:
•屏幕上光標在最左上、最右下位置。
•數組元素的第一個和最後一個。
•報表的第一行和最後一行。
•循環的第0次、第1次、倒數第2次和最後一次。
3.邊界值分析應注意的要點
•如果輸入條件規定了值的個數,則用最大個數、最小個數、比最小個數少一個、比最大個數多一個的數作為測試數據。
•如果輸入條件規定了值的範圍,則應取剛達到這個範圍的邊界值,以及剛剛超過這個範圍邊界的值作為測試輸入數據。
•如果程序中使用了一個內部數據結構,則應當選擇這個內部數據結構的邊界上的值作為測試用例。
•如果程序的規格說明給出的輸人域或輸出域是有序集合,則應選取集合的第一個元素和最後一個元素作為測試用例。
•分析程序規格說明,找出其他可能的邊界條件。
4.怎樣用邊界值分析法設計測試用例
•使一個變量取極值,其他變量取正常值。
•對於一個N變量的函數,邊界值分析會產生4N+1個測試用例。
•確定需要測試的邊界情況,通常等價類的輸人和輸出邊界就是應該著重測試的邊界,而不是選擇等價類中的典型值或任意值。
•選擇略小於、正好等於和略大於邊界的值作為測試的輸人數據。
5. 邊界值分析法的優點和缺點
邊界值分析法的優點如下:
•採用了可靠性理論的單缺陷假設。
•學習使用簡單易行。
•生成測試數據的成本低。
邊界值分析法的缺點如下:
•測試數據不充分。
•不能發現測試變量之間的組合依賴關係。
•不考慮含義和意義。
6.案例解析
在這裡我們依然採用“用戶登錄”案例進行分析,根據等價類劃分法的劃分表可以得 出邊界值如表3-6所示。
表3-6邊界值分析表
根據邊界值分析表內容轉換為設計測試用例,如表3-7所示。
閱讀更多 說說軟件測試那些事兒 的文章