一、測試用例設計原則 1、測試用例的代表性:能夠代表并覆蓋各種合理的和不合理、合法的和非法的、邊界的和越界的、以及極限的輸入數據、操作和環境設置等。
2、測試結果的可判定性:即測試執行結果的正確性是可判定的,每一個測試用例都應有相應的期望結果。
3、測試結果的可再現性:即對同樣的測試用例,系統的執行結果應當是 `相同的。
二、測試用例設計方法原則(只對常用的兩種舉例)
比如:對邊界值設計測試用例,應遵循以下幾條原則:
1、如果輸入條件規定了值的范圍,則應取剛達到這個范圍的邊界的值,以及剛剛超越這個范圍邊界的值作為測試輸入數據。
2、如果輸入條件規定了值的個數,則用最大個數、最小個數、比最小個數少一、比最大個數多一的數作為測試數據。
3、根據規格說明的每個輸出條件,使用前面的原則1。
4、根據規格說明的每個輸出條件,應用前面的原則2。
5、如果程序的規格說明給出的輸入域或輸出域是有序集合,則應選取集合的第一個元素和最后一個元素作為測試用例。
6、如果程序中使用了一個內部數據結構,則應當選擇這個內部數據結構的邊界上的值作為測試用例。
比如:等價類設計測試用例的原則
1、在輸入條件規定了取值范圍或值的個數的情況下,則可以確立一個有效等價類和兩個無效等價類。
2、在輸入條件規定了輸入值的集合或者規定了“必須如何”的條件的情況下,可以確立一個有效等價類和一個無效等價類。
3、在輸入條件是一個布爾量的情況下,可確定一個有效等價類和一個無效等價類。
4、在規定了輸入數據的一組值(假定n個),并且程序要對每一個輸入值分別處理的情況下,可確立n個有效等價類和一個無效等價類。
5、在規定了輸入數據必須遵守的規則的情況下,可確立一個有效等價類(符合規則)和若干個無效等價類(從不同角度違反規則)。
6、在確知已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應再將該等價類進一步地劃分為更小的等價類。
三、測試用例必要元素描述
測試用例編號:用來唯一標識測試用例的編號,由測試組根據具體情況統一管理。
測試用例級別:用來衡量測試用例的重要性,測試組根據具體情況制定統一標準。
測試需求或者測試需求編號(其實就是測試名稱 盡量簡單易懂):描述測試的目的是什么。
前置條件:運行測試用例必須的條件
測試用列的輸入:簡單的講就是用來測試的數據
操作:就是在輸入數據之后用戶的操作,將會影響到測試的輸出
輸出:相應的期望結果。
用于黑盒的測試用例
測試用例編號 | Act 00000001 | 測試用例級別 | 3 |
測試需求或者編號 | 測試用戶登陸是否成功 |
前置條件 | |
輸入 | 操作 | 輸出 |
輸入正確的用戶名字和密碼 | 點登陸按鈕 | 進入應用程序主界面 |
輸入錯誤的用戶名字和密碼 | 點登陸按鈕 | 提示用戶名字或者密碼錯誤,請重新輸入 |
只輸入用戶名 | 點登陸按鈕 | 提示輸入不完整 |
只輸入密碼 | 點登陸按鈕 | 提示輸入不完整 |
用戶名字和密碼為空 | 點登陸按鈕 | 提示用戶名密碼不能為空 |
| 直接點登陸按鈕 | 提示用戶名密碼不能為空 |
| 直接點關閉 | 提示關閉窗口 |
| 直接點cancel | 關閉窗口 |
| 單擊,雙擊各控鍵 | 無異常
|
| TAB鍵操作 | 正常切換 |
| ENTER鍵操作 | 正常切換 |
說明:根據情況可以將輸入正確的用戶名字和密碼;輸入錯誤的用戶名字和密碼進行具體的拆分;輸入字母數字為組合的用戶名,字母符號為組合的密碼或者直接給出具體的值。一般寫到上面的程度就可以了,能夠給測試起到很好的指導作用。
用于白盒的測試用例
intSum(inta,intb) { returna+b; } |
測試用例編號 | Act 00000002 | 測試用例級別 | 1 |
測試需求或者編號 | 測試求和這個函數邏輯和功能是否都正確 |
輸入 | | 輸出 |
a=0,b=32768 | 32768 |
b=0,a=32768 | 32768 |
a=-32767,b=0 | -32767 |
a=32769,b=0 | 處理越界信息提示 |
-32769,0 | 處理越界信息提示 |
a=abs,b=155 | 提示輸入錯誤 |
b=ddd,a=47 | 提示輸入錯誤 |
說明:一般要求函數有返回數值,如果沒有就要根據設計說明書來判斷是否實現設計說明書上提出的功能。
總結:目前我們用到的測試用例只有這兩種,如果其中某一項沒有就不必寫出,原則上都要寫出測試用例再做測試,而且要評審測試用例是否完整,否則所測試的需求很有可能是得不到充分測試的。用戶可以根據實際情況選擇測試用例模板。