等價類劃分法和邊界值法著重考慮輸入條件,但是忽略了輸入條件的各種組合、輸入條件之間的相互制約關系。
因此,需要判定表法和因果圖法作為輔助工具,協助梳理條件間的邏輯關系。
定義
判定表法:
分析和表述若干輸入條件下,被測對象針對這些輸入做出響應的一種工具
在遇到邏輯復雜的業務時,可以利用判定表理清期間的邏輯關系。
重要概念
條件:
條件樁:需求規格說明書定義的被測對象的所有輸入
條件項:針對條件樁可能輸入數據值
動作:
動作樁:針對條件,被測對象可能采取的所有操作
動作項:針對動作樁,被測對象相應的可能取值
在上圖的登陸頁面中,條件樁指的是手機號輸入和密碼輸入,條件項指的是正確的手機號或者錯誤的手機號。
另一方面,動作樁指的是輸入手機號和密碼后,是登陸成功?還是提示錯誤信息?動作項指的是對應動作樁的取值,假如關于登陸成功這個動作樁,為真時取1,為假時取0,那么點擊登錄按鈕后,這個動作樁的動作項可能是1,也可能是0。
設計步驟 理解需求,確定條件樁、動作樁設計及優化判定表填寫動作項根據判定表中輸入結果的表現,進行判定表的合并(非必須)簡化判定表:如果輸出相同,在對應輸入中,有且只有一個條件的取值對動作不產生任何影響則合并
在前面的登陸功能中:
正確的手機號及密碼:登錄成功手機號或密碼為空:提示“手機號或密碼不能為空”手機號或密碼錯誤,提示“請輸入正確的手機號或密碼”
根據以上條件樁和動作樁,生成判定表:
簡化判定表:由于密碼的正確與否,取決于手機號。
一般登錄信息的數據庫表,都是先到數據庫表中找到對應的手機號,在找到手機號的前提下,再去匹配密碼是否正確,如果手機號一開始就錯了軟件測試方法判定表,就不會匹配密碼。
其中空值是一種特殊的錯誤,并且能夠覆蓋到3個動作樁。
因此,后面3個關于“錯誤的手機號”的條件項,可以排除掉。
得到簡化后的判定表:
最后,根據簡化后的判定表軟件測試方法判定表,就可以編寫測試用例了。