兩兩組合覆蓋測試用例設計工具:PICT
2016-08-31
1 成對測試簡介
2 PICT使用
2.1 安裝 PICT
2.2 使用PICT
3 PICT算法
3.1 准備階段
3.2 產生階段
1 成對測試簡介
成對測試(Pairwise Testing),是一種正交分析的測試技術。成對組合覆蓋這一概念是Mandl於1985年在測試Aad編譯程序時提出來的。Cohen等人應用成對組合覆蓋測試技術對Unix中的“Sort”命令進行了測試。測試結果表明覆蓋率高達90%以上。通過對缺陷的統計分析發現,相對於多個因子的組合,大部分的問題能夠通過因子的兩兩組合來發現,多個因子的組合僅會發現少量的問題,但是測試的投入卻是巨大的,因此,相對來說兩兩組合可以更有效地發現缺陷。可見成對組合覆蓋是一種非常有效的測試用例設計方法。
成對組合覆蓋要求任意兩個因素(輸入條件)的所有水平組合至少要被覆蓋1次。實現成對組合覆蓋的算法工具有很多,其中微軟的PICT就是其中一個。
使用范圍
- 對於每個程序輸入來說,均能構建有意義的等價類
- 程序的輸入是彼此獨立的
- 程序的輸入是沒有順序的
- 故障僅取決於一對程序輸入的交互
2 PICT使用
PICT全稱Pairwise Independent Combinatorial Testing tool,是微軟的一款成對組合的命令行生成工具,生成pairwise testing所需的測試用例。
2.1 安裝 PICT
常用的Pairwise工具集:http://www.pairwise.org/tools.asp 處下載PICT工具。下載后默認安裝,也可安裝在: D:\Program Files (x86)\PICT,可以目錄下看到有兩個文件‘pict.exe’、‘PICTHelp.htm’。
2.2 使用PICT
在PICT的目錄下,新建一個test.txt文件,輸入與測試用例相關的所有參數,如下圖1所示:
圖1 test.txt參數內容
test.txt參數內容,如下代碼:
Factor A:I,You Factor B:see,catch Factor C:bird,dog,chicken
CMD進入命令提示符。輸入命令:
cd "D:\Program Files (x86)\PICT" pict test.txt
圖2 輸出結果
也可以通過命令pict test.txt >test.xls命令,將結果輸出到test.xls的excel表格當中
3 PICT算法
pict產生測試用例有兩個階段
- 准備階段
- 產生階段
3.1 准備階段
就是為產生階段做准備,在這個階段,PICT計算出用例產生階段所需要的所有信息。主要是元素的成對組合要覆蓋所有。
列入上面給的參數:有(Fact A Fact B),(Fact A Fact C),(Fact B Fact C),每種各有4,6,6的組合
3.2 產生階段
每種情況叫一個slot,例如(Fact B Fact C)組合有4個slot,(Fact A Fact C),(Fact B Fact C)組合都是有6個slots.
每個slot能夠被標識為uncovered,covered,exclued,分別表示該slot還沒覆蓋,已經覆蓋,或者排除在外(用在有前提條件下),所有uncovered組織成鏈表,當產生階段產生的測試用例如果滿足某個slot的組合,那么該slot就被標識為covered,當所有的slot被標識為covered,那么算法結束。