軟體測試用例設計方法-判定表法

J.w-XIAO發表於2020-06-20

接下來4篇分享的測試用例方法,實際工作中不常用,但是能夠為測試用例提供設計思路。

首先分享的是,判定表法

等價類劃分法和邊界值法著重考慮輸入條件,但是忽略了輸入條件的各種組合、輸入條件之間的相互制約關係。

因此,需要判定表法和因果圖法作為輔助工具,協助梳理條件間的邏輯關係。

定義

判定表法

分析和表述若干輸入條件下,被測物件針對這些輸入做出響應的一種工具

在遇到邏輯複雜的業務時,可以利用判定表理清期間的邏輯關係。

重要概念

條件:

條件樁:需求規格說明書定義的被測物件的所有輸入

條件項:針對條件樁可能輸入資料值

動作:

動作樁:針對條件,被測物件可能採取的所有操作

動作項:針對動作樁,被測物件相應的可能取值

在上圖的登陸頁面中,條件樁指的是手機號輸入和密碼輸入,條件項指的是正確的手機號或者錯誤的手機號。

另一方面,動作樁指的是輸入手機號和密碼後,是登陸成功?還是提示錯誤資訊?動作項指的是對應動作樁的取值,假如關於登陸成功這個動作樁,為真時取1,為假時取0,那麼點選登入按鈕後,這個動作樁的動作項可能是1,也可能是0。

設計步驟

  1. 理解需求,確定條件樁、動作樁
  2. 設計及優化判定表
  3. 填寫動作項
  4. 根據判定表中輸入結果的表現,進行判定表的合併(非必須)
  5. 簡化判定表:如果輸出相同,在對應輸入中,有且只有一個條件的取值對動作不產生任何影響則合併

在前面的登陸功能中:

  1. 正確的手機號及密碼:登入成功
  2. 手機號或密碼為空:提示“手機號或密碼不能為空”
  3. 手機號或密碼錯誤,提示“請輸入正確的手機號或密碼”

根據以上條件樁和動作樁,生成判定表:

簡化判定表:由於密碼的正確與否,取決於手機號。

一般登入資訊的資料庫表,都是先到資料庫表中找到對應的手機號,在找到手機號的前提下,再去匹配密碼是否正確,如果手機號一開始就錯了,就不會匹配密碼。

其中空值是一種特殊的錯誤,並且能夠覆蓋到3個動作樁。

因此,後面3個關於“錯誤的手機號”的條件項,可以排除掉。

得到簡化後的判定表:

最後,根據簡化後的判定表,就可以編寫測試用例了。

以上就是本篇文章所要分享的內容,歡迎各位大牛指正。你的指正,能讓我在測試之路上快速成長。

Leo Never Stop Fighting!

相關文章