對應三個參數的所有組合情況就是12個測試用例。但是我們需要的是在一組測試用例中能夠保證至少一個用例中的每個其他變量的每個取值都配對過。這種情況就可以得到較少的測試用例,我們就可以得到6個測試用例。
用例
|
操作系統
|
打印機
|
是否雙面打印
|
1
|
Win 98
|
HP 4050
|
是
|
2
|
Win 98
|
HP 4100
|
否
|
3
|
Win XP
|
HP 4050
|
否
|
4
|
Win XP
|
HP 4100
|
是
|
5
|
Win 7
|
HP 4050
|
是
|
6
|
Win 7
|
HP 4100
|
否
|
事實上,如果這三個參數中的某兩個參數的值的任意不同的組合會觸發一個bug的話,那表格上的那組測試用例也可以發現該bug。當三個特殊的值組合在一起觸發的某個bug,那表格上的那組測試用例不一定能發現該bug,但是至少我們覆蓋了所有的全對偶(all pairs)。
相對于所有組合情況來說,全對偶的測試覆蓋率要容易很多。例如,如果你想測試10個參數且都有26個值的功能,所有組合情況將導致存在141,167,095,653,376個測試用例。而全對偶測試法就只要測試1094個測試用例就可以。
為了能較好的使用allpairs工具,測試人員需要在表格上列出所有的參數和參數值,一般可以使用Excel工具來表達:
操作系統
|
打印機
|
是否雙面打印
|
Win 98
|
HP 4050
|
是
|
Win XP
|
HP 4100
|
否
|
Win 7
|
原文轉自:http://www.uml.org.cn/Test/201108294.asp