現在的軟件幾乎都是用事件觸發來控制流程的,事件觸發時的情景形成了場景
何為場景?
--場景可以理解為由"那些人、什么時間、什么地點、做什么以及如何做"等要素組成的一系列相關活動,且場景中的活動還能由一系列場景組成
場景法組成:
場景組合:
按上圖組合多個不同的場景:
場景1:基本流
場景2:基本流 備選流1
場景3:基本流 備選流1 備選流2
場景4:基本流 備選流3
場景5:基本流 備選流3 備選流1
場景6:基本流 備選流3 備選流1 備選流2
場景7:基本流 備選流4
場景8:基本流 備選流3 備選流4
用例設計步驟
1、分析需求,確定出軟件的基本流和各項備選流。
2、 依據基本流和各項備選流,生成不同的場景。
3、針對生成的各場景,設計相應的測試用例。
4、重新審核生成的測試用例,去掉多余的部分,並針對最終確定出的測試用例,設計測試數據。
案例分析(一)
例子:分析ATM取款機的場景流程,並設計測試用例和測試數據
基本流:1.插入磁卡
2.ATM驗證賬戶正確
3. 輸入密碼正確,通過驗證
4.輸入取款金額
5.取出金額
6.取卡
備選流一:賬戶不存在或者受限制
備選流二:密碼不正確,還有輸入機會
備選流三:密碼不正確,沒有輸入機會
備選流四:卡中余額不足
備選流五:ATM機中余額不足
備選流六:超過每日最大提款限額
備選流七:輸入金額非100的倍數
案例分析(二)
需求:某旅館住宿系統支持房間網上預定業務。游客訪問網站進行網上房間預定操作,選擇合適的房間后,進行在線預定;此時,需要使用個人賬號登錄系統;待登錄成功后,進行定金支付(定金金額為1天的房款);支付成功后,生成房間預訂單,完成整個房間預定流程。
問題:采用場景法進行測試用例設計
前提條件:該系統需求中業務流程描述清晰,故采用場景法設計用例
第一步:確定軟件的基本流和各項備選流
基本流
備選流
備選流X的含義為可於任何步驟中發生,故標識為未知數X
第二步:依據基本流和備選流生成不同的場景
第三步:針對生產的各場景,設計相應的測試用例。
第四步:重新審核生成的測試用例,去掉多余部分,並針對最終確定出測試用例,設計測試數據
設置以下前置條件:
1、旅館住宿系統中僅支持房間類型為:標准間(100/天),單人間(200/天),雙人間(300/天)
2、單人間已注滿,其他房間有空余
3、Hello為系統的已注冊用戶,密碼為123456
4、Nihao為未注冊的用戶
5、賬戶余額
以上案例均可以用場景法來完成測試用例的編寫!