場景法是通過運用場景來對系統的功能點或業務流程的描述,從而提高測試效果的一種方法。
場景法一般包含基本流和備用流,從乙個流程開始,通過描述經過的路徑來確定的過程,經過遍歷所有的基本流和備用流來完成整個場景。場景主要包括4種主要的型別:正常的用例場景,備選的用例場景,異常的用例場景,假定推測的場景。
上圖為,用例基本流和備選流(注意:備選流的起止點)
基本流:採用直黑線表示,是經過用例的最簡單的路徑(無任何差錯,程式從開始直接執行到結束)
備選流:採用不同顏色表示,乙個備選流可能從基本流開始,在某個特定條件下執行,然後重新加入基本流中(如1和3),也可以起源於另乙個備選流(如2),或終止用例,不在加入到基本流中(如4);(各種錯誤情況)
上圖生成的場景如下:
場景1:基本流
場景2:基本流 備選流1
場景3:基本流 備選流1 備選流2
場景4:基本流 備選流3
場景5:基本流 備選流3 備選流2
場景6:基本流 備選流3 備選流2 備選流1
場景7:基本流 備選流4
場景8:基本流 備選流3 備選流4
為什麼場景法能如此清晰的描述整個事件?因為,現在的系統基本上都是由事件來觸發控制流程的。如:我們申請乙個專案,需先提交審批單據,再由部門經理審批,審核通過後由總經理來最終審批,如果部門經理審核不通過,就直接退回。每個事件觸發時的情景便形成了場景。而同一事件不同的觸發順序和處理結果形成事件流。這一系列的過程我們利用場景法可以清晰的描述清楚。
1.根據說明,描述出程式的基本流及各項備選流
2.根據基本流和各項備選流生成不同的場景
3.對每乙個場景生成相應的測試用例
4.對生成的所有測試用例重新複審,去掉多餘的測試用例,測試用例確定後,對每乙個測試用例確定測試資料值
對於每乙個場景都需要確定測試用例。可以採用矩陣或決策表來確定和管理測試用例。
下面範例中顯示了一種通用格式,其中各行代表各個測試用例,而各列則代表測試用例的資訊。
本例中,對於每個測試用例,存在乙個測試用例id、條件(或說明)、測試用例中涉及的所有資料元素(作為輸入或已經存在於資料庫中)以及預期結果。
通過從確定執行用例場景所需的資料元素入手構建矩陣。然後,對於每個場景,至少要確定包含執行場景所需的適當條件的測試用例。例如,在下面的矩陣中,v(有效)用於表明這個條件必須是 valid(有效的)才可執行基本流,而 i(無效)用於表明這種條件下將啟用所需備選流。下表中使用的「n/a」(不適用)表明這個條件不適用於測試用例。
1. 根據說明,描述出程式的基本流及各項備選流
備選流:無賬號,賬號或密碼錯誤,賬號沒有錢,賬號餘額不足 使用者退出系統
2. 根據基本流和各項備選流生成不同的場景
3. 根據場景生成相應的測試用例
測試用例id
場景/條件
賬號密碼
餘額預期結果
場景1:無賬號
in/a
n/a提示無賬號
場景2:賬號或密碼錯誤(賬號錯誤,密碼正確)iv
n/a提示賬號或密碼錯誤重新輸入
場景2:賬號或密碼錯誤(賬號正確,密碼錯誤)vi
n/a提示賬號或密碼錯誤重新輸入
場景3:賬號餘額不足vv
i提示賬號餘額不足
場景4:賬號沒有錢vv
提示賬號餘額不足
場景5:購物成功vv
v生成訂單
場景6:操作中退出系統vv
使用者退出系統
4. 根據上表,設計資料,填入資料
測試用例id
場景/條件
賬號密碼
餘額預期結果
場景1:無賬號
n/an/a
提示無賬號
場景2:賬號或密碼錯誤(賬號錯誤,密碼正確)
n/a提示賬號或密碼錯誤重新輸入
場景2:賬號或密碼錯誤(賬號正確,密碼錯誤)
in/a
提示賬號或密碼錯誤重新輸入
場景3:賬號餘額不足
提示賬號餘額不足
場景4:賬號沒有錢
提示賬號餘額不足
場景5:購物成功
生成訂單,餘額減少
場景6:操作中退出系統
使用者退出系統
測試用例設計方法 場景法
1.場景 軟體幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場景,而同一事件不同的觸發順序和處理結果就形成了事件流。2.重要概念 基本流 採用直黑線表示,是經過用例的最簡單的路徑 無任何差錯,程式從開始直接執行到結束 備選流 採用不同顏色表示,乙個備選流可能從基本流開始,在某個特定條件下執...
測試用例設計方法 場景法
1.場景 軟體幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場景,而同一事件不同的觸發順序和處理結果就形成了事件流。2.重要概念 基本流 採用直黑線表示,是經過用例的最簡單的路徑 無任何差錯,程式從開始直接執行到結束 備選流 採用不同顏色表示,乙個備選流可能從基本流開始,在某個特定條件下執...
測試用例方法場景法
什麼是場景法 場景法一般是對系統的流程和業務進行描述,驗證主要功能和業務流程是否實現 場景組成 場景由基礎流和備選流組成基礎流 軟體功能按照最短的事件流實現的一條正確流程備選流 基礎流程下出現異常和錯誤的事件流程場景法編寫思路 1.編寫場景基本流 2.根據基本流描編寫備選流 3.基本流和備選流組合形...