【黑盒測試】測試用例的常用方法


測試用例的常用方法

1 等價類划分法 

2 邊界值法

3 因果圖及判定表法

4 正交表

5 測試大綱法

6 場景法

7 錯誤推斷法

8 隨機測試

9 需求文檔轉化法


 

1、等價類划分法

  應用場合:界面中只要有數據輸入的地方,就可以使用等價類划分法。從無窮多的數據中,挑選少量代表數據進行測試。

1)分析需求,划分等價類:有效等價類和無效等價類

2)從每個等價類中,至少挑選1個代表數據進行測試

如:姓名3-20個字符

  有效數據:大於等於3個字符,小於等於20個字符

  無效數據:小於3個字符

               大於20個字符

2、  邊界值法

 應用場合:界面中有數據輸入的地方,一般可以使用,邊界值法往往和等價類划分法一起使用,形成一套更為完善的測試方案。

找到有效數據和無效數據之間的分界點(邊界值)

測試:最小邊界值-1,最小邊界值,最大邊界值+1,最大邊界值

如:姓名3-20個字符

  有效數據:大於等於3個字符,小於等於20個字符

  無效數據:小於3個字符

               大於20個字符 

       最小邊界值:3個字符

       最大邊界值:4個字符

       最小邊界值-1:2個字符

       最大邊界值+1:5個字符

3、因果圖及判定表法

   應用場合:在一個界面中有多個控件,如果控件之間有組合關系或者限制關系,不同的控件組合會產生不同的輸出結果。為了弄清不同的輸入組合會產生怎樣的輸出結果,可以使用因果圖或判定表法。

1)基本 :  表達的是因(輸入結果)和果(輸出結果)之間的關系。

  A 恆等

         如果a=0那么b=0;如果a=1那么b=1

  B 與(^)

        幾個輸入條件都成立結果才成立,如果輸入其中任何一個輸入條件不成立,結果都不成立。

  C 或(v)

        多個輸入條件有任何1個成立結果都成立,只有所有的輸入條件都不成立的時候,結果才不成立。

     D 非

        A=1時B=0;A=0時B=1

2)約束(限制):  限制的是同一類的,要么限制的同為輸入條件,要么限制的同為輸出結果

  A 互斥E(Exclude)

        只能有1個是成立(1),但是可以都不選(都是0)

       B 唯一O(Only)

             表示在多個條件中,有且僅有1個成立。

       C 要求R(Required)

        若a=1則要求b必須為1,不允許出現a=1,b=0的情況,反之a=0時b的值無所謂。

       D 包含 I ( include )  [多選]

             必須得選,但是可以多選

       E 屏蔽 M ( Masked )

             當a=1時b必須是0;當a=0時b的值不一定。

 4、正交表

適用場合:在一個界面中有多個控件,每個控件有多個取值,測試時考慮不同的控件不同取值之間的多種組合,但組合數量巨大(>20種,20種以下一般考慮判定表因果圖),沒有必要全部測試,如何從所有的組合中挑選最少、最優的組合進行測試,可以使用正交排列法。 

正交表公式Ln(mk)

  m:根據每個控件有幾個值確定

  K:根據控件的個數進行確定。

  n:表示有幾條測試用例。

如果沒有合適的正交表:

 1)選擇K(控件的個數),如果沒有正好符合的值,選擇最接近的在一點的,用不到的列可以刪掉。
    2)選擇m(每個控件的取值),如果每個控件的取值個數不同
  方案1、少數服從多數原則:取值數相同的控件個數最多的那個值。
    分析案例:取3個值的控件有兩個是最多的,所以m=3;
    公式是:34
    注意:1)盡量保證公平、均勻的添加。
          2)檢查是滯有完全重復的等式,如果發現可以修改或刪除(盡量改)
  方案2、最大值原則(推薦):看哪個控件的取值個數最多,m就選這個值。
    此案例:打印內容的控件取值是4個,是最多的,所以m=4
    公式是:應該是44,實際上44沒有,選擇45,然后刪除1列

正交表的測試思想

   1)使用每個控件的每個取值參與組合的次數是基本相等的(均勻的)

   2)在所有的組合數據中,選取數據時,應該均勻的選取,而不能從局部選取。

   3)如果時間允許,盡可能的多測一些組合

 5、測試大綱法

適用場合:程序包含多個窗口,每個窗口中又有多個功能,這些功能之間又有一定的聯系。為了梳理清楚窗口之間以及窗口不同功能之間的聯系,使用測試大綱法。

如:安裝程序的測試

  1)  分析需求列出窗口以及每個窗口中的功能

  2)  根據大綱,找到窗口及功能之間的關系,編寫測試用例

 6、場景法

適用場合:大多數的業務比較復雜的軟件系統都適合使用場景法(便於將各個功能點串起來,便於形成完整的業務感覺)是一種基於軟件業務的測試方法,把自己當成最終用戶,盡可能的模擬用戶在使用此軟件的操作。 

熟悉所測軟件的業務邏輯:

1)模擬用戶正確操作的業務流程---驗證軟件的業務功能是否實現

2)模擬用戶錯誤的操作的情形---驗證軟件的異常處理能力(健壯性)

總結:先關注功能的整體業務流程是否能夠實現(場景法),當整體業務流程完成之后,再去關注細節(等價類、邊界值等方法)。

注意一個場景可能對應多條測試用例,或者一條用例可能對應多個場景。

 7、錯誤推斷法

 基於經驗和直覺推測程序中所有可能存在的各種錯誤 , 從而有針對性的設 計測試用例的方法 .

1)程序中所有可能的錯誤

2) 容易發生錯誤的特殊情況

3) 以前產品測試中曾經發現的錯誤

8、隨機測試

隨意測試,不考慮任何用例和需求,完全站在一個用戶或者的角度對產品進行使用。

適用場景:

   1) 所有之前設定的用例已經 執行完畢

   2)海量的條件組合無法一遍 歷的時候

9、需求文檔轉化法

所見即得的思想:

  1. 所有的需求文檔描述字 所有的需求文檔描述字 信息,轉化為用例
  2. 所有的示意圖、流程狀 所有的示意圖、流程狀 態圖等信息,直接轉化為測 態圖等信息,直接轉化為測 試用例
  3. 所有項目需求達成的口頭共 所有項目需求達成的口頭共 識,需求確認的郵件溝通信 識,需求確認的郵件溝通信息,直


免責聲明!

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



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