1. 程式人生 > >測試用例設計方法3-狀態遷移

測試用例設計方法3-狀態遷移

狀態遷移法

    許多需求時使用狀態機來描述的,狀態及的測試主要關注測試狀態的轉移上面。通過測試驗證其在給定的條件下是否能夠產生需要的狀態變化,有沒有不可達到的狀態或是是否有可能產生非法狀態。因此可以設計狀態前一路徑覆蓋的角度來設計測試用例,並對系統進行測試。狀態遷移的目標是設計足夠的測試用例來對系統的狀態進行覆蓋、對狀態-條件的組合進行覆蓋、以及狀態遷移路徑的覆蓋。

狀態遷移的設計方法

  1. 根據需求分系統存在哪些狀態,分析狀態之間的轉換
  2. 使用箭頭標誌狀態之間的轉換
  3. 繪製狀態遷移圖
  4. 繪製狀態遷移樹,並根據狀態遷移樹得到測試用例

示例:根據售票系統設計的狀態遷移圖和狀態遷移樹

•    向航空公司打電話預定機票—>此時機票資訊處於“完成”狀態

•    顧客支付了機票費用後—>機票資訊就變為“已支付”狀態

•    旅行當天到達機場後,拿到機票後—>機票資訊就變為“已出票”狀態

•    登機檢票後—>機票資訊就變為“已使用”狀態

•    在登上飛機之前任何時間可以取消自己的訂票資訊,如果已經支付了機票的費用,則還可以得到退款,取消後—>訂票資訊處於“已被取消”狀態

繪製狀態遷移圖:

一句狀態遷移圖得到狀態遷移樹

最終的得到測試用例

用例編號 測試用例
1 完成→已取消
2 完成→已支付→已取消
3 完成→已支付→已出票→已取消
4 完成→已支付→已出票→已使用