因果圖、斷定表法工具
1、應用場合
在界面中有多個控件,控件之間有組合或限制關係,不一樣的輸入組合會對應不一樣的輸出結果,若是想弄清楚不一樣的輸入組合到底對應哪些輸出結果,可使用因果圖/斷定表法。(因果圖/斷定表法比較適合測試組合數量較少的狀況,通常少於20種)測試
2、因果圖
因(緣由):輸入條件
果(結果):輸出結果
因果圖:就是經過畫圖的方式來表示輸入條件(因)和輸出結果(果)之間的關係。ui
3、因果圖中的圖形符號
一、基本圖形符號
表示的是因與果之間的關係
恆等
若是a=1 ,那麼b=1
若是a=0,那麼b=0blog
與
與的含義:只有全部條件都爲1時,結果爲1,有任何一個條件爲0(或者全部條件爲0)那麼結果爲0.
簡化:全1爲1,有0爲0
分析過程以下圖:class
與的圖形符號:效率
或
或的含義:只有全部條件都爲0時,結果爲0,有任何1個條件爲1(或者全部條件爲1)時,結果爲1
簡化:全0爲0,有1爲1require
或的關係圖形符號:程序
非:取反
若是a=1,那麼b=0
若是a=0,那麼b=1im
二、限制關係圖形符號
限制關係圖形要麼在因(輸入條件)之間,要麼在果(輸出結果)之間。
互斥(E-exclude)
含義:能夠不選,若是選只能選1個d3
惟一(O-Only)
含義:有且只有1個(必需要選,並且只能選1個)
惟一和互斥的區別:
互斥能夠不選
惟一必需要選1個
包含(I-include)
含義:至少選1個(能夠多選,不能不選,最少得選1個)
要求(R-required)
含義:若是a=1 那麼要求b必須是1,反之若是a=0,那麼b值無所謂
屏蔽(M-masked)
含義:當a=1時,b=0
當a=0,b的值有多是1,也有多是0
4、測試步驟
被測程序:交通一卡通充值模擬系統
步驟1:瞭解需求,找出全部的輸入條件(因)
投幣50元
投幣100元
充值50元
充值100元
步驟2:找出全部的輸出結果(果)
成功充值並退卡
找零
錯誤提示並退卡
將因和果填入《斷定表》中
步驟3:找出輸入條件之間的組合和限制關係。
步驟4:明確不一樣的輸入組合會產生怎樣的輸出結果,畫因果圖,填斷定表。(在實際工做中能夠只填斷定表,不畫因果圖)
5、總結
一、測試步驟
步驟1:分析需求,找出全部的輸入條件
步驟2:找出全部的輸出結果
步驟3:找出輸入條件中的全部組合和限制關係
步驟4:明確每種輸入組合對應的輸出結果,填斷定表,畫因果圖(熟練後,畫因果圖能夠省略)
說明:
1)畫因果圖只是一種輔助工具,經過分析最終獲得斷定表,再經過斷定表編寫測試用例。可是有時畫因果圖比較麻煩,影響測試效率,因此在應用熟練以後,能夠省略畫因果圖直接填斷定表,進而編寫測試用例。
2)斷定表的缺點:斷定表中輸入條件的限制關係很差體現。
如何解決:能夠在斷定表中添加備註,將限制關係寫入備註部分。
步驟5:根據斷定表,編寫測試用例
每1列表示1種組合,寫1條用例
二、因果圖/斷定表適合測試控件的組合狀況,並且適合測試組合數量比較少的狀況。常見的控件有:按鈕(按/不按),單選按鈕(選/不選),複選框(選/不選),選項較少的下拉列表等
三、斷定表的特色:
1)輸入條件的順序是可有可無的
2)輸出結果的順序是可有可無的
3)先測哪一種組合,後測哪一種組合是可有可無的
4)每種組合之間是相互獨立的
四、介紹斷定表的組成項: