在多數情況下,邊界值條件是基于應用程序的功能設計而需要考慮的因素,可以從軟件的規格說明或常識中得到,也是最終用戶可以很容易發現問題的。然而,在測試用例設計過程中,某些邊界值條件是不需要呈現給用戶的,或者說用戶是很難注意到的,但同時確實屬于檢驗范疇內的邊界條件,稱為內部邊界值條件或子邊界值條件。
內部邊界值條件主要有下面幾種:
a)數值的邊界值檢驗:計算機是基于二進制進行工作的,因此,軟件的任何數值運算都有一定的范圍限制。
MILY: 宋體; COLOR: black; mso-bidi-font-weight: bold; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋體">項 |
范圍或值 |
位(bit) |
0或1 |
字節(byte) |
0 ~ 255 |
字(word) |
0~65535(單字)或0~4294967295(雙字) |
千(K) |
1024 |
兆(M) |
1048576 |
吉(G) |
1073741824 |
b)字符的邊界值檢驗:在計算機軟件中,字符也是很重要的表示元素,其中ASCII和Unicode是常見的編碼方式。下表中列出了一些常用字符對應的ASCII碼值。
字符 |
ASCII碼值 |
字符 |
ASCII碼值 |
空(null) |
0 |
A |
65 |
空格(space) |
32 |
a |
97 |
斜杠( / ) |
47 |
Z |
90 |
0 |
48 |
z |
122 |
冒號( : ) |
58 |
單引號( ‘ ) |
96 |
@ |
64 |
|
|
c)其它邊界值檢驗
6.基于邊界值分析方法選擇測試用例的原則
1)如果輸入條件規定了值的范圍,則應取剛達到這個范圍的邊界的值,以及剛剛超越這個范圍邊界的值作為測試輸入數據。
例如,如果程序的規格說明中規定:"重量在10公斤至50公斤范圍內的郵件,其郵費計算公式為……"。作為測試用例,我們應取10及50,還應取10.01,49.99,9.99及50.01等。
2)如果輸入條件規定了值的個數,則用最大個數,最小個數,比最小個數少一,比最大個數多一的數作為測試數據。
比如,一個輸入文件應包括1~255個記錄,則測試用例可取1和255,還應取0及256等。
3)將規則1)和2)應用于輸出條件,即設計測試用例使輸出值達到邊界值及其左右的值。
例如,某程序的規格說明要求計算出"每月保險金扣除額為0至1165.25元",其測試用例可取0.00及1165.24、還可取一0.01及1165.26等。
再如一程序屬于情報檢索系統,要求每次"最少顯示1條、最多顯示4條情報摘要",這時我們應考慮的測試用例包括1和4,還應包括0和5等。
4)如果程序的規格說明給出的輸入域或輸出域是有序集合,則應選取集合的第一個元素和最后一個元素作為測試用例。
5)如果程序中使用了一個內部數據結構,則應當選擇這個內部數據結構的邊界上的值作為測試用例。
6)分析規格說明,找出其它可能的邊界條件。
三、因果圖法
1.定義
是一種利用圖解法分析輸入的各種組合情況,從而設計測試用例的方法,它適合于檢查程序輸入條件的各種組合情況。
2.因果圖法產生的背景
等價類劃分法和邊界值分析方法都是著重考慮輸入條件,但沒有考慮輸入條件的各種組合、輸入條件之間的相互制約關系。這樣雖然各種輸入條件可能出錯的情況已經測試到了,但多個輸入條件組合起來可能出錯的情況卻被忽視了。
如果在測試時必須考慮輸入條件的各種組合,則可能的組合數目將是天文數字,因此必須考慮采用一種適合于描述多種條件的組合、相應產生多個動作的形式來進行測試用例的設計,這就需要利用因果圖(邏輯模型)。
3.因果圖介紹
1) 4種符號分別表示了規格說明中向4種因果關系。
2)因果圖中使用了簡單的邏輯符號,以直線聯接左右結點。左結點表示輸入狀態(或稱原因),右結點表示輸出狀態(或稱結果)。
3) Ci表示原因,通常置于圖的左部;ei表示結果,通常在圖的右部。Ci和ei均可取值0或1,0表示某狀態不出現,1表示某狀態出現。
4.因果圖概念
1)關系
、俸愕龋喝鬰i是1,則ei也是1;否則
文章來源于領測軟件測試網 http://www.kjueaiud.com/