Matrixを使った組み合わせテストにはPICTを使うのがお勧めです。
ベトナムのITオフショア開発チームにソフトウェアのテストを依頼すると、通常日本人チームでは省略してしまうような細かいパターンも愚直に網羅してくれる傾向にあります。
傾向にあるというか、まぁ、そういう依頼をしていると言った方が正しいのか。。
「この機能は重要機能なので、パターンを網羅したテストを実施してね」
といった依頼をすると、愚直にMatrixを作成し、全パターンをテストケースに落とし、その結果、テスト実行に膨大な時間がかかります。。という相談が来たりします。
そんな時、PICTというツールを使うと便利です。
オールペア法やPICTについては、検索していただければすぐに分かります。このページなどがわかり易いです。要するに、
「組み合わせテストの信頼性を担保したまま、テスト実施パターンを減らす」
ということです。
MacでPICTツールをビルド
PICTはMicrosoftが作成したツールですが、GitHubで公開されています。
https://github.com/Microsoft/pict
Macの場合、下記のように簡単にビルド出来ます。
$ git clone https://github.com/Microsoft/pict.git $ cd pict $ make $ ./pict Pairwise Independent Combinatorial Testing Usage: pict model [options] Options: /o:N - Order of combinations (default: 2) /d:C - Separator for values (default: ,) /a:C - Separator for aliases (default: |) /n:C - Negative value prefix (default: ~) /e:file - File with seeding rows /r[:N] - Randomize generation, N - seed /c - Case-sensitive model evaluation /s - Show model statistics
パラメータとパラメータの値をモデルとして定義する
次に、組み合わせテストを実施したいパラメータとその値を列挙したテキストファイルを作成します。
例えば、このページのサンプルであれば下記のようになります。
$ vi model.txt $ cat model.txt OSバージョン: Windows Vista, Windows XP, Windows 2000 Wordバージョン: Word 2007, Word 2003, Word 2000 Excelバージョン: Excel 2007, Excel 2003, Excel 2000
このファイルに対して、下記のようにPICTを実行します。
$ ./pict model.txt OSバージョン Wordバージョン Excelバージョン Windows 2000 Word 2003 Excel 2003 Windows XP Word 2003 Excel 2007 Windows 2000 Word 2000 Excel 2000 Windows XP Word 2007 Excel 2000 Windows XP Word 2000 Excel 2003 Windows Vista Word 2003 Excel 2000 Windows 2000 Word 2007 Excel 2007 Windows Vista Word 2007 Excel 2003 Windows Vista Word 2000 Excel 2007
このケースでは、3つのパラメータがそれぞれ3つの値のバリエーションを持っているので、愚直にすべての組み合わせをテストすると、3×3×3=27 ケースのテストを実施しなければなりません。
しかし、PICTを使うと、上記のように9ケースの確認で十分という結果になりました。
パラメータの数と値が増えてくると、テストケース数が劇的に増えますが、PICTを通すと劇的に減らせます。
「テストケースを減らして、本当に信頼性が担保できるのか?」
という点については、検索すると文献がいろいろ出てくるので、それらをステークホルダーに見せれば、ほぼ納得してくれます。
以上。。ベトナムはあんまり関係なかった。。