1. 程式人生 > >黑盒測試方法(五)正交實驗設計方法

黑盒測試方法(五)正交實驗設計方法

一、應用場景

利用因果圖來設計測試用例時,作為輸入條件的原因與輸出結果之間的因果關係,有時很難從軟體需求規格說明中得到。因果圖而得到的測試用例數目多的驚人,可利用正交實驗設計。

二、什麼是正交實驗法

正交實驗設計方法:依據Galois理論,從大量的(實驗)資料(測試例)中挑選適量的,有代表性的點(例)。類似的方法有:聚類分析方法,因子方法方法等.

節省測試工作工時;可控制生成的測試用例數量;測試用例具有一定的覆蓋率。

三、設計步驟:

1.提取功能說明,構造因子--狀態表

把影響實驗指標的條件稱為因子.而影響實驗因子的條件叫因子的狀態.分解說明書中的功能為基本的功能。找出影響其功能實現的

操作物件和外部因素,把他們當作因子,而把各個因子的取值當作狀態要求.

2.加權篩選,生成因素分析表

對因子與狀態的選擇可按其重要程度分別加權.可根據各個因子及狀態的作用大小,出現頻率的大小以及測試的需要,確定權值的大小。

3.利用正交表構造測試資料集

正交表的推導依據Galois理論(這裡省略,需要時可查數理統計方面的教材)。

四、公式

單一水平正交表Ln(mk)k代表最多可安排影響指標因素的個數或正交表的列數m表示每個因素水平數,且有n=k*(m-1)+1

對於混合水平正交表Ln(m1k1m2k2..mxkx),用n=k1*(m1-1)+k2*(m2-1)+…kx*(mx-1)+1

公式計算

如果不存在試驗次數等於n的正交表,我們就得找出滿足試驗次數大於n的正交表並且水平數大於等於max(m1,m2,m3,…)、因素數大於等於(k1+k2+k3+…)。比如22

每列中不同數字出現的次數相等。任意2列其橫向組成的數字對中,每種數字對出現的次數相等。

五、示例

根據“性別”=“男,女”進行查詢根據“班級”=“1班,2班”查詢根據“成績”=“及格,不及格”查詢。

     1. 傳統設計:共2*2*2=8個用例

     2. 用正交:共3*2-1+1=4

序號

性別

班級

成績

1

1

及格

2

2

不及格

3

1

不及格

4

2

及格

     3. 因素數和水平數越大越能體現用正交表的好處。

六、混合水平正交表示例

     1.       確定因素數和水平數

因素數:對比度,色彩效果,感光度,白平衡,照片大小,閃光模式

水平數:

對比度:正常、極低、低、高、極高

色彩效果:無、黑白、棕褐色、負片、水綠色

感光度:自動、100、200、400、800

白平衡:自動、白熾光、日光、熒光、陰光

照片大小:5M、3M、2M、1M、VGA

閃光模式:開、關

      2.  根據因素數和水平數確定n 

m1=5,k1=5

m2=2,k2=1

Ln(5521)

         n=k1*(m1-1)+k2* (m2-1)+1=5*(5-1)+1*(2-1)+1=20+1+1=22

       3. 3.選擇合適的正交表

不存在n=22的正交表,這個時候我們就得找n大於22並且滿足m>=max(m1=5,m2=2),k>=k1+k2=5+1=6的正交表。查到L25(56),L49(78)

七、正交試驗法的優缺點

優點:均勻分散,整齊可比”的特點。通過使用正交試驗法減少了測試用例,工時與費用,提高測試用例的有效性。是一種高效率、快速、經濟的實驗設計方法。

缺點:對每個狀態點同等對待,重點不突出,容易造成在使用者不常用的功能或場景中,花費不少時間進行測試設計與執行,而在重要路徑的使用上反而沒有重點測試。