黑盒測試方法——因果圖


一.因果圖分析法的由來和介紹:

  1.因果圖分析法又叫魚骨圖分析法,由日本管理大師石川馨先生所發明,它是對問題的 根因 進行分析的方法,透過現象看本質的方法:

    

 

 

   2.什么是因果圖:

    在軟件設計中,因果圖用於 輸入與輸出、輸入與輸出 存在依賴與約束關系的被測對象。因果圖是一種利用圖解法分析輸入的各種組合情況,從而進行測試用例設計。

    等價類和邊界值分析法同樣是對輸入條件的測試分析,但其輸入條件之間並不存在任何關聯或約束,且必須相互獨立(等價類的原則之一)。

 

二.因果圖的關系:

  1.在進行因果圖圖解之前,需要先了解因果圖特有的術語和語法(關系圖):

  2.因果關系:

 

 

 

     2.1. 恆等(是1則1):

    

      若原因出現,則結果出現;若原因不出現,則結果也不出現。若C1是1,則E1也是1;若C1是0,則E1也是0;商場購物,買單后才會打印憑條,沒有買單是不會打印的。

 

    2.2.非~(是1則0):

    

      若原因出現,則結果不出現;若原因不出現,則結果出現。若C2是1,則E2是0;若C2是0,則E2是1。例:用手機逛淘寶,如果有網絡,則不提示網絡異常;如果沒有網絡,則提示網絡異常。

 

    2.3. 或 U(其中一個是1則為1):

      

 

 

       若原因中的一個有出現,則結果出現,若所有原因都不出現,則結果不出現,若 C3 或 C4 或 C5 是1,則E3是1;若 C3 和 C4 和 C5 是0,則E3是0。 例:手機、平板、電腦、電視,擁有其中之一就可以看視頻,如果都沒有則無法看視頻。

 

    2.4. 與 ^(全部為1才是1):

      

 

         若所有原因都出現,則結果出現;若原因中的一個不出現,則結果不出現。若 C3 和 C4 和 C5 是1,則 E4 是1;若 C3 或 C4 或 C5 是0,則 E4 是0。例:手機要有電、有網絡信號,才能上網。沒電或沒網絡信號,則不能上網。

 

  3.條件約束:

    3.1.異或/互斥(Exclusive):

      

 

      C1/C2/C3中至多為1。例:你要趕赴約會地點,只能選擇步行、自行車、打車、坐地鐵、開車中的一個。也可以用都不選擇,貓在家里爽約。

 

    3.2. 或(Inclusive):

      

 

       C1、C2中至少一個必須是1。例:你和女朋友想在家里看電影,手機、平板、電腦都可以是選擇,但是必須選擇至少其中一個。

 

    3.3.唯一(Only):

      

 

       C1和C2必須有且只有一個是1。 例:想進入地鐵站閘口,那你必須從 交通卡、微信支付、臨時票中選擇其中一個。

 

    3.4.要求(Require):

      

 

       C1出現時,C2必出現。C1不出現時,C2不確定。例:在籃球場上打球,如果出手投籃(C1),則必然擁有球權(C2)。如果沒有出手投籃,也無法確定是否擁有球權。

 

    3.5.強制(Force):

      

 

     C1出現時,C2必不出現。C1不出現時,C2不確定。例:如果你在公司了,則你必定不在家。如果你不在公司,你也未必在家。

 

三.分析步驟:

  1.分析被測對象的規格,找出原因與結果;

  2.確定因果關系,畫出因果圖;

  3.確定因果圖中的約束,並做好標記;

  4.把因果圖轉換為判定表;

  5.用判定表設計測試用例。

 

四.實例:

  1.在自助機器進行地鐵卡的充值:

    要求:自助機器只接收50元或100元紙幣,一次只能使用一張紙幣,一次充值金額只能為50元或100元。

      

 

     1.1 .分析對象的原因和結果:

      

 

     1.2 .畫出因果圖:C1和C2或關系,C3和C4是或關系:

      

 

     

  1.3 .因果圖增加約束:C1和C2 只能出現一個,C3 和C4 只能出現一個:

        

 

     1.4. 轉換成判定表,並通過約束去除無效用例:

      

 

 

    1.5. 根據判定表生成測試用例。

 

五.小結:

  因果圖分析是為有效測試分析的輔助工具,通過因果圖分析可以得到判定表。判定表根據約束進行用例的有效分析,最終輸出測試用例。但是很多時候,繪制因果圖是非常麻煩,非常影響效率,所以在熟練之后,可以直接寫判定表,進行編寫測試用例。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM