場景法設計測試用例
在物件導向的軟體開發中,事件觸發機制是程式設計中經常遇到的。
(一)場景法原理
現在的軟體幾乎都是用事件觸發來控制流程的。像gui軟體、遊戲等。事件觸發時的情景形成了場景,而同一事件不同的觸發順序和處理結果就形成了事件流。這種在軟體設計方面的思想可以引入到軟體測試中,可以生動地描繪出事件觸發時的情景,有利於設計測試用例,同時使測試用例更容易理解和執行。
在測試乙個軟體的時候,在場景法中,測試流程是軟體功能按照正確的事件流實現的一條正確流程,那麼我們把這個稱為該軟體的基本流;而凡是出現故障或缺陷的過程,就用備選流加以標註,這樣的話,備選流就可以是從基本流來的,或是由備選流中引出的。所以在進行圖示的時候,就會發現每個事件流的顏色是不同的。
基本流和備選流:如下圖所示,圖中經過用例的每條路徑都用基本流和備選流來表示,直黑線表示基本流,是經過用例的最簡單的路徑。備選流用不同的色彩表示,乙個備選流可能從基本流開始,在某個特定條件下執行,然後重新加入基本流中(如備選流1和3);也可能起源於另乙個備選流(如備選流2),或者終止用例而不再重新加入到某個流(如備選流2和4)。
在這個圖中,有乙個基本流和四個備選流。
每個經過用例的可能路徑,可以確定不同的用例場景。從基本流開始,再將基本流和備選流結合起來,可以確定以下用例場景:
場景 1 基本流
場景 2 基本流 備選流
1場景 3 基本流 備選流
1 備選流
2場景 4 基本流 備選流
3場景 5 基本流 備選流
3 備選流
1場景 6 基本流 備選流
3 備選流
1 備選流
2場景 7 基本流 備選流
4場景 8 基本流 備選流
3 備選流
4下面是場景法的基本設計步驟:
(二)場景法例子
我們都在當當網或china-pub華章網上書店都訂購過書籍,整個訂購過程為:使用者登入到**後,進行書籍的選擇,當選好自己心儀的書籍後進行訂購,這時把所需圖書放進購物車,等進行結帳的時候,使用者需要登入自己註冊的帳號,登入成功後,進行結帳並生成訂單,整個購物過程結束。
那麼我們通過以上的描述,從中確定哪是基本流,哪些是備選流:
基本流使用者登入到**,書籍的選擇,進行訂購,把所需圖書放進購物車,等進行結帳的時候,登入自己的帳號,登入成功後,生成訂單
備選流1
帳號不存在
備選流2
帳號錯誤
備選流3
密碼錯誤
備選流4
無選購書籍
備選流x
退出系統
根據基本流和備選流來確定場景:
場景1-
購物成功
基本流場景2-
帳號不存在
基本流備選流1
場景3-
帳號錯誤
基本流備選流2
場景4-
密碼錯誤
基本流備選流3
場景5-
無選購書籍
基本流備選流4
我們來設計用例
對於每乙個場景都需要確定測試用例。可以採用矩陣或決策表來確定和管理測試用例。
下面顯示了一種通用格式,其中各行代表各個測試用例,而各列則代表測試用例的資訊。
本例中,對於每個測試用例,存在乙個測試用例id、條件(或說明)、測試用例中涉及的所有資料元素(作為輸入或已經存在於資料庫中)以及預期結果。
通過從確定執行用例場景所需的資料元素入手構建矩陣。然後,對於每個場景,至少要確定包含執行場景所需的適當條件的測試用例。例如,在下面的矩陣中,v(有效)用於表明這個條件必須是 valid(有效的)才可執行基本流,而 i(無效)用於表明這種條件下將啟用所需備選流。下表中使用的「n/a」(不適用)表明這個條件不適用於測試用例。
測試用例id
場景/
條件帳號
密碼
選購書籍
預期結果
場景1:購物成功vv
v成功購物
場景2:帳號不存在
in/a
n/a提示帳號不存在
場景3:帳號錯誤iv
n/a提示帳號錯誤,返回基本流步驟2
場景4:密碼錯誤vi
n/a提示密碼錯誤,返回基本流步驟3
場景5:無選購書籍vv
i提示選購書籍,返回基本流步驟5
我們看到以上表中,是把每個場景成立的條件進行了分析,基本上已經明確了測試用例的數量,現在只要把真實資料填充上,那麼整個測試用例就完成了。
測試用例id
場景/條件
帳號密碼
選購書籍
預期結果
場景1:購物成功
xu《書》
成功購物
場景2:帳號不存在
zhang
n/an/a
提示帳號不存在
場景3:帳號錯誤
zhou
n/a提示帳號錯誤,返回基本流步驟2
場景4:密碼錯誤
xu123$%^
n/a提示密碼錯誤,返回基本流步驟3
場景5:無選購書籍xu空
提示選購書籍,返回基本流步驟5
場景法設計測試用例
場景法設計測試用例 在物件導向的軟體開發中,事件觸發機制是程式設計中經常遇到的。一 場景法原理 現在的軟體幾乎都是用事件觸發來控制流程的。像gui軟體 遊戲等。事件觸發時的情景形成了場景,而同一事件不同的觸發順序和處理結果就形成了事件流。這種在軟體設計方面的思想可以引入到軟體測試中,可以生動地描繪出...
UI測試用例設計,場景測試法
那麼正題來了,我們慢慢縷下思路 1 整理要測實體中的,處理邏輯 觸發規則 動作。2 將場景測試抽象出來 3 到這個時候,我們就可以劃分場景了。新建的3種場景 生成場景 退貨與交付 這樣,場景都整理出來了,但是我們還要處理每個動作具體assert或者說,每個介面都在幹嘛。4 那麼抽出乙個新建的場景,進...
測試用例設計方法 場景法
1.場景 軟體幾乎都是用事件觸發來控制流程的,事件觸發時的情景便形成了場景,而同一事件不同的觸發順序和處理結果就形成了事件流。2.重要概念 基本流 採用直黑線表示,是經過用例的最簡單的路徑 無任何差錯,程式從開始直接執行到結束 備選流 採用不同顏色表示,乙個備選流可能從基本流開始,在某個特定條件下執...