測試用例設計方法—因果圖法

因果圖法

1.案例

某系統業務單據處理規則以下;測試

  • 對於處於提交審批狀態的單據,數據完整率達到80%以上或已通過業務員確認,則進行處理

解:spa

(1)列出可能的輸入、輸出並編號.net

輸入:設計

  • C1:單據處於提交審批狀態
  • C2:單據數據完整率達到80%
  • C3:單據通過業務員確認

輸出:blog

  • E1:處理
  • E2:不處理

(2)找出輸入輸出的對應關係ci

  • 若單據不處於提交審批狀態,則不處理
  • 若單據處於提交審批狀態且數據完整率達到 80%,則處理
  • 若單據處於提交審批狀態且通過業務員確認,則處理

(3)畫出因果圖get

                     

(4)將因果圖轉換爲斷定表it

    1 2 3 4 5 6 7 8
條件 C1 0 0 0 0 1 1 1 1
  C2 0 0 1 1 0 0 1 1
  C3 0 1 0 1 0 1 0 1
中間結果 T 0 1 1 1 0 1 1 1
動做 E1 0 0 0 0 1 1 1
  E2 1 1 1 1 1 0 0 0

(5)將斷定錶轉化爲測試用例 (略)table

2.分析

what?程序

因果圖法就是從需求中找出因(輸入條件)果(輸出結果或程序狀態改變),經過分析輸入條件之間的關係(組合關係、約束關係等)以及輸入與輸出之間的關係,製成因果圖,轉化爲斷定表,最後生成測試用例。

why?

等價類劃分法和邊界值分析法只考慮了輸入條件,可是沒有考慮輸入條件之間的組合、制約關係,而實際輸入之間存在着相互依賴關係。

how?

--因果圖中的符號:

                                

  • Ci 表示緣由
  • Ei 表示結果
  • 恆等:緣由結果同時出現
  • 與:緣由都出現,結果纔出現;緣由任意一個不出現,結果不出現
  • 或:緣由任意一個出現,結果出現;緣由多不出現,結果不出現
  • 非:緣由不出現,結果出現;緣由出現,結果不出現

--因果圖中的約束:

輸入條件       

  • E 表示a、b兩個緣由不能同時成立
  • I 表示a、b、c中至少有一個條件成立
  • O 表示a、b條件中有且僅有一個成立
  • R 表示當a出現時b也必須出現

輸出條件

  • M 表示結果a是1,則結果b強制爲0

--因果圖法步驟:

1.分析全部可能的輸入輸出,並賦予標識符

2.找出輸入輸出之間的關係

3.根據關係畫出因果圖

4.將因果圖轉換爲斷定表

5.根據斷定表生成測試用例

 

 

上一篇:測試用例設計方法—邊界值分析法    https://my.oschina.net/zhangyujian/blog/edit/754148

下一篇:測試用例設計方法—場景分析法    https://my.oschina.net/zhangyujian/blog/754595