黑盒測試 邊界值分析法

2021-08-07 07:26:32 字數 4449 閱讀 3807

引入

乙個軟體無論實現怎樣各種各樣豐富的功能,其內部實現都不可避免的對各種各樣的資料範圍進行界定與判斷,從而針對不同的資料範圍進行所需的處理,從而實現軟體的需求。而由於需求界定不準確、設計不嚴密、程式書寫手誤等原因,對於這些資料範圍邊界的判斷是軟體極容易出錯的地方,使軟體做出錯誤的處理。從而無法滿足軟體需求。

針對於這種情況,軟體測試中有乙個測試方法叫做邊界值法,這個方法也是經常被測試人員提到,我們下面來看看這個方法具體的操作方法。

為什麼會有邊界值分析法?

長期的測試工作經驗告訴我們,大量的錯誤是發生在輸入或輸出範圍的邊界上,而不是發生在輸入輸出範圍的內部。

例如:程式設計師只處理了

1-10

位的情況,忘記對

10位進行處理;

程式設計師把

≤誤寫成了<,計數器發生少計數一次。

邊界值分析法

對輸入或輸出的邊界值進行測試的一種黑盒測試方法。

是作為對等價類劃分法的補充,這種情況下,其測試用例來自等價類的邊界。

邊界點

1、邊界是指相對於輸入等價類和輸出等價類而言,稍高於、稍低於其邊界值的一些特定情況。 2

、邊界點分為上點、內點和離點。

邊界值分析法&等價類劃分法

邊界值分析使用與等價類劃分法相同的劃分,只是邊界值分析假定錯誤更多地存在於劃分的邊界上,因此在等價類的邊界上以及兩側的情況設計測試用例。

如何選擇測試資料?(原則) 1

、如果輸入條件規定了值的範圍,則應取剛達到這個範圍的邊界值,以及剛剛超越這個範圍邊界的值作為測試輸入資料。

例如:程式的規格說明中規定:「重量在

10公斤至

50公斤範圍內的郵件,其郵費計算公式為

……」。

測試資料取

7個點應取10、

25及50,還應取

10.01,49.99,9.99

及50.01

測試資料取

5個點贏取10、

25及50

,還應取

9.99

及50.01

重量可以是小數,沒有規定小數點個數時預設取兩位

2、如果輸入條件規定了值的個數,則用最大個數,最小個數,比最小個數少

1,比最大個數多

1的數作為測試資料。

例如,乙個輸入檔案應包括

1-255

個記錄。

測試資料可取1和

255,還應取0及

256等 3

、根據規格中每個輸出條件,使用原則

1,如果輸出條件規定了值的範圍,則應取剛達到這個範圍的邊界值,以及剛剛超越這個範圍邊界的值作為測試輸入資料。

例如,程式的規格說明要求計算出「每月績效獎金為0至

1165.25

元」。

測試用例可取

0.00

及1165.25

,還可取

-0.01

及1165.26等。

4、根據規格中每個輸出條件,使用原則

2,如果輸出條件規定了值的個數,則用最大個數、最小個數,比最小個數少

1,比最大個數多

1的數作為測試資料。

例如,情報檢索系統,要求每次「最少顯示

1條、最多顯示

4條情報摘要」。

這時我們應考慮的測試用例包括1和

4,還應包括0和

5等。 5

、如果程式中使用了乙個內部資料結構,則應當選擇這個內部資料結構的邊界上的值作為測試用例。

例如,程式系統設計文件中,上傳的:格式、名字、大小、是否有效…

6、分析規格說明,找出其他可能的邊界條件

例如,特殊邊界值:預設值、空值、空格、零、無效資料等

邊界值檢驗的主要型別

邊界型別

輸入數字

最大、最小

字元首位、末位

位置上、下

重量最高、最低

速度最快、最慢

方位最高、最低

尺寸最長、最短

空間空、滿……

在多數情況下,邊界值條件是基於應用程式的功能設計而需要考慮的因素,可以從軟體的需求規格或常識中得到,也是終端使用者可以很容易發現問題的。

還有沒有從軟體規格說明中看不到的邊界值呢?

內部邊界值

有些邊界值條件在軟體內部,使用者幾乎看不到,但同時確實屬於檢驗範疇內的邊界條件,成為內部邊界條件或次邊界值條件。

常見的內部邊界值條件有下面兩種:

數值的邊界值

字元的邊界值

在實際的測試用例中,需要將基本的軟體設計要求和程式定義的要求結合起來,即結合基本邊界值條件和內部邊界值條件來設計有效的測試用例。

內部邊界值(

1):數值的邊界值

計算機是基於二進位制進行工作的,因此,軟體的任何數值運算都有一定的範圍限制。

項範圍或值

位(bit)

0或1

位元組(byte)

0-255 字(

word)

0-65535

(單字)或

0-4294967295

(雙字)

例如,程式有乙個輸入變數

x的範圍是(

0,10000

),但是在程式內部,當想x≤

255時,用乙個位元組表示,當

x>255

時用乙個字表示,那麼,

255就是乙個內部邊界值。

邊界條件設計測試用例步驟 1

、確定邊界情況

通常輸入或輸出等價類的邊界就是應該著重測試的邊界情況。

2、選取測試資料

選取正好等於、剛剛大於或剛剛小於邊界的值作為測試資料,而不是選取等價類中的典型值或任意值。

例如:程式的規格說明中規定:「重量在

10公斤至

50公斤範圍內的郵件,其郵費計算公式為

……」。

測試資料取

7個點應取10、

25及50,還應取

10.01,49.99,9.99

及50.01

測試用例

x輸入資料

預期輸出

t1xmin-

9.99

f1t2

xmin

10f2

t3xmin+

10.01

f3t4

xnom

25f4

t5xmax-

49.99

f5t6

xmax

50f6

t7xmax+

50.01f7

例如:對於函式f(

x1,x2

),其輸入變數x1和

x2的取值邊界定義如下: a

≤x1≤

b;c≤

x2≤d

其中兩個變數都為正數。編號x

1 x2

f(x1,x2)

1abc

f(ab,c) 2

abdf(ab,d)3ab

cd4abc-5ab

d+6acd

7bcd8

a-cd9b+

cd 邊界條件測試用例設計法

基於邊界的方法是根據定義域來實現的,最終演變成一般邊界值條件測試、健壯性測試、最壞情況測試和健壯最壞情況測試四種技術。

1、一般邊界值條件測試:(

1)每次保留程式中乙個變數,讓其餘的變數取正常值,被保留的變數依次取

min、

min+

、nom

、max-

、max (

2)對程式中的每個變數重複(

n個變數的測試用例個數為

4n+1個)

2、健壯性測試:(

1)每次保留程式中乙個變數,讓其餘的變數取正常值,被保留的變數依次取

min-

、min

、min+

、nom

、max-

、max

、max+。

(2)對程式中的每個變數重複(

n個變數的測試用例個數為

6n+1個)

3、最壞情況測試:(

1)所有變數均可去

min、

min+

、nom

、max-

、max+

這五個邊界值中的任何乙個。(組合) (

2)測試用例為五個集合的笛卡爾乘積。對於乙個

n變數函式,該方法生成的測試用例數為5的

n次方個。 4

、健壯最壞情況測試:(

1)所有變數均可取

min-

、min

、min+

、nom

、max-

、max

、max+這7

個邊界值中的任何乙個。 (

2)測試用例為

7個集合的笛卡爾乘積。對於乙個

n變數函式,該方法生成的測試用例數為7的

n次方個。

黑盒測試 邊界值分析法

引入 乙個軟體無論實現怎樣各種各樣豐富的功能,其內部實現都不可避免的對各種各樣的資料範圍進行界定與判斷,從而針對不同的資料範圍進行所需的處理,從而實現軟體的需求。而由於需求界定不準確 設計不嚴密 程式書寫手誤等原因,對於這些資料範圍邊界的判斷是軟體極容易出錯的地方,使軟體做出錯誤的處理。從而無法滿足...

軟體測試 黑盒測試 邊界值分析法

可能存在邊界值的地方 數字 字元 位置 質量 大小 速度 方位 尺寸 空間 對應的邊界 最大 最小 首位 末位 上 下 最快 最慢 最高 最低 最短 最長 空 滿 測試實踐表明,大量的故障往往發生在輸入定義域的邊界上,而不是在其內部。因此,針對各種邊界情況設計測試用例,通常會取得很好的測試效果。例如...

邊界值分析法 黑盒測試設計專題 邊界值

關注betester,學習更多知識 讓碎片成體系,讓測試更專業 當我們還是學生時,最彷徨的莫過於得知自己的考試成績僅差 半分 就達到目標。即便只有 半分 差異,回到家卻是一種天上與煉獄的待遇。這種處於臨界的差異會產生截然不同的狀態,使得結果發生天翻地覆的變化。軟體測試也不例外,很多 對邊界處理不當,...