一、因果圖法介紹
從用自然語言書寫的程序規格說明的描述中找出因(輸入條件)和果(輸出或程序狀態的改變),可以通過因果圖轉換為判定表。(百度百科)
個人認為,因果圖是通過分析因(輸入)與果(輸出),從而找出輸入與輸入、輸入與輸出、輸出與輸出之間的關系,畫出便於觀察的圖示,來設計測試用例的方法。
二、方法步驟(自己總結)
1.分析輸入輸出,並進行分類,找出輸入輸出分別有幾種。
2.分析輸入之間的關系。
3.分析怎樣的輸入會導致各種結果。
4.根據分析結果畫出因果圖
5.根據因果圖畫出判定表、人為刪去判定表中不可能發生的情況。。
6.找出測試用例
三、實例分析
此處使用老師上課講的例題
產品說明書:有一個處理單價為1元5角錢的盒裝飲料的自動售貨機軟件。若投入1元5角硬幣,按下“可樂”、“雪碧”、或“紅茶”按鈕,相應的飲料就送出來。若投入的是2元硬幣,在送出飲料的同時退還5角硬幣。
1.分析輸入輸出
輸入:C1投入1.5元硬幣
C2投入2元硬幣
C3按下“可樂” 按鈕
C4按下“雪碧” 按鈕
C5按下“紅茶” 按鈕
輸出:EF1退還0.5元硬幣
EF2送出“可樂”
EF3送出“雪碧”
EF4送出“紅茶”
2.分析輸入之間的關系
1)C1與C2為異或關系
2)C3、C4、C5因投入硬幣最多為2元 所以分析為異或關系
3)C1(C2)與C3(C4、C5)為且的關系
4)EF2、EF3、EF4為異或關系
5)EF1與EF2(3、4)沒關系
3.分析什么原因導致結果
1)EF1:C2與C3(4、5)導致EF1
2)EF2(3、4):C1(2)與C3(4、5)導致
4.畫出因果圖
5.根據因果圖畫出判定表、人為刪去判定表中不可能發生的情況。
6.設計用例 就行了