邊界值分析法
對於測試人員來說,測試工作做得越多越會發現,程序得一些錯誤往往發生在邊界值上,例如,某程序得輸入數據要求取值范圍為1-100,當取值在1-100內部時沒有問題,然而去邊界值1或100時會發生錯誤,這就是程序開發時對邊界問題沒有做好處理。邊界值分析法就是對邊界值進行測試得一種方法,本節將針對邊界值分析法進行詳細講解。
邊界值分析法是對軟件得輸入或輸出邊界進行測試得一種方法,它通常作為等價類划分得一種補充測試。對於軟件來說,錯誤經常發生字輸入或輸出值得關鍵點,即從符合需求到不符合需求的關鍵點,因此邊界值分析法是在等價類的邊界上執行軟件測試工作,它的所有測試用例都是在等價類的邊界處設計。
在等價類划分法中,無論是輸入等價類還是輸出等價類,都會有多個邊界,而邊界值分析法就是在這些邊界附近尋找某些點作為測試數據,而不是在等價類內部選擇測試數據。
在等價類中選擇邊界值時,如果輸入條件規定了取值范圍或值的個數,則在選取邊界值時可選取5個測試值或7個測試值。如果選取5個測試值,即在兩個邊界值內選取5個測試數據:最小值、略大於最小值、正常值、略小於最大值、最大值。例如,輸入條件規定取值范圍為1-100,則可以選取1、1.1、50、99.9、100這5個值作為測試數據。
如果選取7個測試值,則在取值范圍外再各選取一個測試數據,分別是略小於最小值、最小值、略大於最小值,正常值,略小於最大值,最大值,略大於最大值。對於上述上述輸入條件,可選取0.9、1、1.1、50、99.9、100、100.1這7個值作為測試數據。
如果軟件要求輸入或輸出是一組有序集合,如數組、鏈表等,則可選取第一個和最后一個元素作為測試數據。如果被測試程序中有循環,則可選取第0次,第1次與最后兩次循環作為測試數據。除了上述講解到的邊界值選取之外,軟件還有其它邊界值的選取情況,在對軟件進行測試時,要仔細分析軟件規格需求,找出其可能的邊界條件。
邊界值分析法作為一種單獨的軟件測試方法,它只再邊界值取值上考慮測試的有效性,相對於等價類划分法來說,它的執行更加簡單易行,但缺乏充分性,不能整體全面地測試軟件,因此它只能作為等價類划分法地補充測試。