四因素三水平正交試驗表 測試 如何選擇合適的正交表

2021-10-11 16:03:21 字數 2699 閱讀 3977

窗體中有多個控制項(字型、字元樣式、顏色、字型大小),

每個控制項有多個取值

字型:仿宋、楷體、華文彩雲

字元樣式:粗體、斜體、下劃線

顏色:紅色、綠色、藍色

字型大小:20號、30號、40號

如果按照正常步驟進行,需要 3*3*3*3=81 種組合,就需要寫81個測試用例,顯得比較多,針對這種組合量比較大的情況,如何採用最少的測試用例集合獲得最大的測試覆蓋率呢,就可以採用正交排列法(---定義:正交排列法就是能夠使用最小的測試過程集合獲得最大的測試覆蓋率。附:這是統計學的乙個研究成果)。

可分為:單一水平正交表 和 混合水平正交表。

單一水平正交表:各列水平數相同的正交表稱為等水平正交表。比如:l9 (3**4) -->(附:括號裡意思為3的4次方,下同。)、l2 7(3**13) 稱為3水平正交表。 l4 (2**3)、l8 (2**7) 稱為2水平正交表。單一水平正交表可以用 ln(m**k) 表示,n是行數,m是水平數,k是因數。比如上邊需求示例:可以理解為4因數(字型,字元樣式,顏色,字型大小),3水平(意思是每個因數里都有三個選項,比如:字型裡有 仿宋、楷體、華文彩雲 3個選擇)。一般情況下,我們可以直接確定m和k,n 可以根據水平數和因數計算行數,公式為:n=k*(m-1)+1。

混合水平正交表:各列水平數不完全相同的正交表稱為混合水平正交表。比如:l8 (4**1 2**4)-->(附:括號裡意思為4的1次方 和 2的4次方。意思為表中共有8行,有一列的水平為4,有4列的水平為2。)。混合水平正交表可以用 ln(m1**k1 m2**k2) 表示。一般情況下,我們可以直接確定m和k,n 可以根據水平數和因數計算行數,公式為:n=k1*(m1-1)+k2*(m2-1)+k3*(m3-1)......+ kx*(mx-1) + 1。

檢視正交表

假如我們確定有3因數2水平,計算n=3*(2-1)+1=4,應該表示為 l4(2**3),那麼我們看看有木有和這個正好相等的正交表,如果有,那麼把變數值複製進去這個表中,如果沒有,按照如下方法選取:

1. 水平數相等,因數相等時,取行數剛好比自定義正交表略大的

2. 水平數相等,因數不相等時,取行數剛好比自定義正交表略大的,因數剛好比自定義正交表略大的。比如:自定義為: l7(3**3), 我們選取為 l9(3**4), 套用之後,最後一列因素去掉

3. 水平數不相等時,即:混合正交表。

例:有五個因素(變數):

a、b、c、d和e

兩個因素有兩個水平(變數的取值)、兩個因素有三個水平,乙個因素有六個水平:

a:a1、a2

b:b1、b2

c:c1、c2、c3

d:d1、d2、d3

e:e1、e2、e3、e4、e5、e6

自定義為:l11(2^2 3^2 5^1)

選擇正交表:

表中的因素數(變數)>=5

表中至少有二個因素的水平數(變數的取值)>=2

至少有另外二個因素的水平數>=3

還至少有另外乙個因素的水平數>=6

行數取最少的乙個:l49(7^8)或者l18(3^6 6^1))

結果:l18(3^6 6^1)

例:m1=5 k1=5

m2=2 k2=1

n=22

自定義為:l22(5^5 2^1)

沒有正好等於22的正交表,此時選擇大於22並且滿足m>=max(m1=5, m2=2), k>=k1+k2=6 的正交表,查到有

l25(5^6)、l49(7^8) 都符合,選擇行數少的,即:最終選擇 l25(5^6)

對於混合正交表,可以使用allpairs工具輔助我們進行選擇。

allpairs工具使用:

1)製作取值表(不要編號) 因素和水平 (因素是一行 。。。。 )

2)製作的取值表複製到乙個txt文字中(不要改格式) user.txt

3)把txt文字放入allpairs工具的資料夾中

4)在資料夾中執行 cmd (我到達了這個資料夾下面)

4)在allpairs工具的資料夾路徑下使用dos命令:

allpairs.exe 建立的txt文字 > 用例結果文字(可以不存在)

例:

三因素四水平正交試驗 測試方法之正交試驗法

一 正交實驗法 正交試驗設計 orthogonal experimental design 是研究多因素多水平的又一種設計方法,它是根據正交性從全面試驗中挑選出部分有代表性的點進行試驗,這些有代表性的點具備了 均勻分散,齊整可比 的特點,正交試驗設計是分式析因設計的主要方法。是一種高效率 快速 經濟...