白盒測試中的幾種邏輯覆蓋


白盒測試又稱為結構測試、透明盒測試、邏輯驅動測試或基於代碼的測試。就是在知道軟件代碼,和內部邏輯結構后進行的一項測試。主要目的是檢查內部結構,邏輯。方法是檢查每一條路徑。與黑盒測試相比,黑盒測試更偏向用戶,白盒測試更偏向於開發者。黑盒測試只需要輸入和結果。而白盒測試更需要測試,軟件內部是如何運行的。

今天我想說一說,白盒測試中的幾種邏輯覆蓋

白盒測試,為了保證測試的完整性,就要測試軟件內部的每一條路徑。邏輯覆蓋方法能幫助我們設計測試用例,以減少不必要的消耗:

邏輯覆蓋包括語句覆蓋判定覆蓋條件覆蓋判定/條件覆蓋條件組合覆蓋路徑覆蓋。六種覆蓋標准發現錯誤的能力呈由弱到強的變化:

1.語句覆蓋每條語句至少執行一次。
2.判定覆蓋每個判定的每個分支至少執行一次。
3.條件覆蓋每個判定的每個條件應取到各種可能的值。
4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。
5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。
6.路徑覆蓋使程序中每一條可能的路徑至少執行一次。
 
以下我舉個例子
對於一個這樣邏輯的程序它的代碼大致如下
...
if(y>1&&z=0)
    x=x/y;
if(y=2||x>1)
    x=x+1;
...
1.語句覆蓋每條語句至少執行一次。
  我們只需是每條語句執行一次即可 x=4,y=2,z=0
2.判定覆蓋每個判定的每個分支至少執行一次。
  我們只需是每個分支執行一次即可
  假設第一個用例在兩個判斷都為真,第二個用例都為假
  x=4,y=2,z=0;x=1,y=1z=1
3.條件覆蓋每個判定的每個條件應取到各種可能的值。
  只需讓每個調劑出現一次,條件為y>1,z=0,y=2,x>1
  用例一讓所有條件為真x=4,y=2,z=0;用例二是所有條件為假x=1,y=1z=1
4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。
  x=4,y=2,z=0;x=1,y=1z=1
5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。
  可能組合為 真真,真假,假真,假假
  用例一x=4,y=2,z=0;用例二x=1,y=2,z=1;三(2,1,0);四(1,1,1)
6.路徑覆蓋使程序中每一條可能的路徑至少執行一次。
  即兩個判斷組合為真真,真假,假真,假假
  一(4,2,0)二(1,1,0)三(4,2,1)四(1,1,1)
以上


免責聲明!

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



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