在上面的矩陣中,六個測試用例執行了四個場景。對于基本流,上述測試用例 CW1 稱為正面測試用例。它一直沿著用例的基本流路徑執行,未發生任何偏差?;玖鞯娜鏈y試必須包括負面測試用例,以確保只有在符合條件的情況下才執行基本流。這些負面測試用例由 CW2 至 6 表示(陰影單元格表明這種條件下需要執行備選流)。雖然 CW2 至 6 對于基本流而言都是負面測試用例,但它們相對于備選流 2 至 4 而言是正面測試用例。而且對于這些備選流中的每一個而言,至少存在一個負面測試用例(CW1 - 基本流)。
每個場景只具有一個正面測試用例和負面測試用例是不充分的,場景 4 正是這樣的一個示例。要全面地測試場景 4 - PIN 有誤,至少需要三個正面測試用例(以激活場景 4):
輸入了錯誤的 PIN,但仍存在輸入機會,此備選流重新加入基本流中的步驟 3 - 輸入 PIN。
輸入了錯誤的 PIN,而且不再有輸入機會,則此備選流將保留銀行卡并終止用例。
最后一次輸入時輸入了“正確”的 PIN。備選流在步驟 5 - 輸入金額處重新加入基本流。
注:在上面的矩陣中,無需為條件(數據)輸入任何實際的值。以這種方式創建測試用例矩陣的一個優點在于容易看到測試的是什么條件。由于只需要查看 V 和 I(或此處采用的陰影單元格),這種方式還易于判斷是否已經確定了充足的測試用例。從上表中可發現存在幾個條件不具備陰影單元格,這表明測試用例還不完全,如場景 6 - 不存在的帳戶/帳戶類型有誤和場景 7 - 帳戶余額不足就缺少測試用例。
一旦確定了所有的測試用例,則應對這些用例進行復審和驗證以確保其準確且適度,并取消多余或等效的測試用例。
測試用例一經認可,就可以確定實際數據值(在測試用例實施矩陣中)并且設定測試數據
TC(測試用例)ID 號 | 場景/條件 |
PIN
|
帳號
|
輸入的金額
(或選擇的金額)
|
帳面金額
|
ATM 內的金額
|
預期結果 |
CW1. | 場景 1 - 成功的提款 | 4987 | 809 - 498 | 50.00 | 500.00 | 2,000 | 成功的提款。帳戶余額被更新為 450.00 |
CW2. | 場景 2 - ATM 內沒有現金 | 4987 | 809 - 498 | 100.00 | 500.00 | 0.00 | 提款選項不可用,用例結束 |
CW3. | 場景 3 - ATM 內現金不足 | 4987 | 809 - 498 | 100.00 | 500.00 | 70.00 | 警告消息,返回基本流步驟 6 - 輸入金額 |
CW4. | 場景 4 - PIN 有誤(還有不止一次輸入機會) |
4978
|
809 - 498 | n/a | 500.00 | 2,000 | 警告消息,返回基本流步驟 4,輸入 PIN |
CW5. | 場景 4 - PIN 有誤(還有一次輸入機會) |
4978
原文轉自:http://www.anti-gravitydesign.com |