功能測試之邊界條件
發表于:2007-11-05來源:作者:點擊數:
標簽:
邊界條件是指軟件計劃的操作界限所在的邊緣條件. 如果 軟件測試 問題包含確定的邊界,那么數據類型可能是: 數值 速度 字符 地址 位置 尺寸 數量 同時,考慮這些類型的下述特征: 第一個/最后一個 最小值/最大值 開始/完成 超過/在內 空/滿 最短/最長 最慢/最快
邊界條件是指軟件計劃的操作界限所在的邊緣條件.
如果
軟件測試問題包含確定的邊界,那么數據類型可能是:
數值 速度 字符 地址 位置 尺寸 數量
同時,考慮這些類型的下述特征:
第一個/最后一個 最小值/最大值
開始/完成 超過/在內
空/滿 最短/最長
最慢/最快 最早/最遲
最大/最小 最高/最低
相鄰/最遠
越界測試
通常是簡單加1或者很小的數(對于最大值)和減少1或者很小的數(對于最小值),例如:
第一個減1/最后一個加1
開始減1/完成加1
空了再減/滿了再加
慢上加慢/快上加快
最大數加1/最小數減1
最小值減1/最大值加1
剛好超過/剛好在內
短了再短/長了再長
早了更早/晚了更晚
最高加1/最低減1
另一些該注意的輸入:默認,空白,空值,零值和無;非法,錯誤,不正確和垃圾數據.
選擇
測試用例的原則:
一、如果輸入條件規定了值的范圍,則應該取剛達到這個范圍的邊界值,以及剛剛超過這個范圍邊界的值作為測試輸入數據;
二、如果輸入條件規定了值的個數,則用最大個數、最小個數、比最大個數多1格、比最小個數少1個的數做為測試數據;
三、根據規格說明的每一個輸出條件,使用規則一;
四、根據規格說明的每一個輸出條件,使用規則二;
五、如果程序的規格說明給出的輸入域或輸出域是有序集合(如有序表、順序文件等),則應選取集合的第一個和最后一個元素作為測試用例;
六、如果程序用了一個內部結構,應該選取這個內部數據結構的邊界值作為測試用例;
七、分析規格說明,找出
其他可能的邊界條件。
邊界值法舉例
找零錢最佳組合
假 設 商 店 貨 品 價 格 (R) 皆 不 大 於 100 元 ( 且 為 整 數 ) , 若 顧 客 付 款 在 100 元 內 (P) , 求 找 給 顧 客 之 最 少 貨幣 個(張) 數 ? ( 貨 幣 面 值 50 元 (N50) , 10 元 (N10) , 5 元 (N5) , 1 元 (N1) 四 種 )
一、 分 析 輸 入 的 情 形 。
R >100
0
R <= 0
P >100
R<= P <= 100
P
二、 分 析 輸 出 情 形 。
N50 = 1
N50 = 0
4 >N10 >= 1
N10 = 0
N5 = 1
N5 = 0
4 >N1 >= 1
N1 = 0
三、 分 析 規 格 中 每 一 決 策 點 之 情 形 , 以 RR1, RR2, RR3 表 示 計 算 要 找 50, 10, 5 元 貨 幣 數 時 之 剩 余 金 額 。 R >100R <= 0
P >100
P RR1 >= 50
RR2 >= 10
RR3 >= 5
四、 由 上 述 之 輸 入 / 輸 出 條 件 組 合 出 可 能 的 情 形 。
R >100
R <= 0
0 <= 100, P >100
0 <= 100, P
0 <= 100, R <= P <= 100, RR = 50
0 <= 100, R <= P <= 100, RR = 49
0 <= 100, R <= P <= 100, RR = 10
0 <= 100, R <= P <= 100, RR = 9
0 <= 100, R <= P <= 100, RR = 5
0 <= 100, R <= P <= 100, RR = 4
0 <= 100, R <= P <= 100, RR = 1
0 <= 100, R <= P <= 100, RR = 0
五、 為 滿 足 以 上 之 各 種 情 形 , 測 試 資 料 設 計 如 下 :
1. 貨品價格 = 101
2. 貨品價格 = 0
3.貨品價格 = -1
4. 貨品價格 = 100, 付款金額 = 101
5. 貨品價格 = 100, 付款金額 = 99
6. 貨品價格 = 50, 付款金額 = 100
7. 貨品價格 = 51, 付款金額 = 100
8. 貨品價格 = 90, 付款金額 = 100
9. 貨品價格 = 91, 付款金額 = 100
10. 貨品價格 = 95, 付款金額 = 100
11. 貨品價格 = 96, 付款金額 = 100
12. 貨品價格 = 99, 付款金額 = 100
13. 貨品價格 = 100, 付款金額 = 100
原文轉自:http://www.anti-gravitydesign.com