(六)使用因果圖法設計測試用例+一卡通充值例子

FixedStarHaHa發表於2018-05-11

一、應用場合
在一個介面中,有多個控制元件,測試時要考慮控制元件的組合關係,不同的控制元件組合會產生不同的輸出結果的組合,最終是為了弄清什麼樣的輸入組合會產生什麼樣的輸出組合,使用因果圖。
二、因果圖的核心

  • “因”是原因,輸入條件
  • “果”是結果,輸出結果
    使用圖形的方式,分析軟體輸入和輸出的對應關係
    三、圖形符號
    1、基本圖形:表示輸入和輸出的對應關係
    這裡寫圖片描述
    (1)恆等
    a是原因(輸入),b是結果(輸出)
    含義:若a=1,則b=1 “1”是動作或狀態,比如開關按下、核取方塊選中
    若a=0,則b=0
    (2)非(~)
    a是原因,b是結果
    含義:若a=1,則b=0
    若a=0,則b=1
    (3)或
    a,b,c為輸入(輸入也可以有多個),d是輸出
    若a=1,或b=1,或c=1,則d=1
    若a=b=c=0,則d=0
    (4)與
    a,b,c為輸入,d是輸出
    若a=b=c=1,則d=1,否則為0
    在實際應用中“恆等”、“與”應用較多
    2、約束(限制條件)圖形
    要麼單獨限制輸入,要麼單獨限制輸出
    下面的都是按照限制輸入來講的,也可以將其改為輸出
    這裡寫圖片描述
    (1)互斥【重點】
    a,b,c不同時為1,即a,b,c中至多隻有一個1
    舉例:
    這裡寫圖片描述
    單選按鈕:接受協議和不接受協議最多隻能選擇1個。若選擇接受協議,則“下一步”是黑色,可以選;若均不選擇或者選擇不接受協議,則“下一步”為灰色,不能再繼續安裝
    (2)包含(I)
    a,b,c至少有一個1,即a,b ,c不能同時為0
    舉例:調查資訊來源:廣告(已選,不能修改)、電視、網路、報紙、朋友介紹、其他
    這種就是包含
    (3)唯一(O)【重點】
    a,b,c必須有一個成立,且僅為一個成立。
    說明:唯一的情況是有一個預設值;互斥沒有預設值
    (4)要求(R)
    若a=1,則b必須為1。不可能出現a=1,b=0。
    若a=0,不能確定b怎樣。
    表示當a出現時,b必須也出現;a不出現,b不確定
    這裡寫圖片描述
    若“自動登入”選中,則“記住密碼”自動選中。
    若“自動登入”未選中,則“記住密碼”可以選中,也可以不選
    (5)遮蔽(M)
    若a=1,則b必須為0;當a=0時,b的值不確定
    這裡寫圖片描述
    當第一個數輸入錯誤,應該彈出“第一個資料非法”;
    當第二個數輸入錯誤,應該彈出“第二個資料非法”;
    ①當第一個資料和第二個資料都輸入錯誤時,只會彈出“第一個資料輸入錯誤”,“第二個資料輸入錯誤”就被遮蔽掉;
    ②當第一個資料輸入正確,是否彈出“第二個資料非法”,應該根據輸入第二個資料情況。

四、使用因果圖分析程式
這裡寫圖片描述
這裡寫圖片描述
1、找出所有的原因(輸入),並編號
(1)投幣50元
(2)投幣100元
(3)充值50元
(4)充值100元
2、找出所有的結果(輸出),並編號
A:充值成功並退卡
B:提示充值成功
C:找零
D:提示錯誤
3、在步驟1的基礎上,找出輸入的限制關係和組合關係
(1)限制關係(哪些輸入不能組合)
①輸入(1)和(2)不能組合【互斥】
②輸入(3)和(4)不能組合【互斥】
(2)能組合(決定測試用例數量)
①輸入(1)和(3)組合
②輸入(1)和(4)組合
③輸入(2)和(3)組合
④輸入(2)和(4)組合
⑤輸入(1)單獨
⑥輸入(2)單獨
⑦輸入(3)單獨
⑧輸入(4)單獨
先把輸入的限制關係畫出因果圖
4、在步驟2的基礎上,找出哪些輸出不能組合,哪些可以組合
(1)限制關係
①輸出A和D不能(互斥)
②輸出B和D不能(互斥)
畫出限制關係因果圖
(2)組合關係
①輸出A和B必須組合
②輸出A、B、C組合
③輸出C和D組合【使用者不想充值了情況】
④輸出D單獨
5、找到輸入組合和輸出組合的對應關係(什麼樣的輸入組合會產生什麼樣的輸出組合)
依據步驟3(2)和步驟4(2)
情況1:
輸入(1)和(3)組合
會產生:
輸出A和B的組合
畫出因果圖
情況2:
輸入(1)和(4)組合
會產生:
輸出C和D組合
情況3:
輸入(2)和(3)組合
會產生:
輸出A、B、C組合
情況4:
輸入(2)和(4)組合
會產生:
輸出A和B的組合
情況5:
輸入(1)單獨
會產生:
輸出C和D組合
情況6:
輸入(2)單獨
會產生:
輸出C和D組合
情況7:
輸入(3)單獨
會產生:
輸出D單獨
這裡寫圖片描述
6、根據因果圖,畫出判定表
這裡寫圖片描述
5、6是交叉進行的,寫完一種情況,就寫一條判定表的項
7、根據判定表編寫用例:把判定表的一列轉換為一條用例
這裡寫圖片描述

五、因果圖法的侷限性
按鈕的組合、核取方塊的組合、下拉選單的組合
每個控制元件的條件(或取值)最好為2個或3個,比如:按鈕按下或者不按下;核取方塊選擇還是不選擇;單選按鈕點選或者不點選;有3個選項的下拉選單

相關文章