PICTを生成エンジンに使用する組み合わせテストツールTest Case Generator   | 組み合わせテストケース生成ツール 「PictMaster」 とソフトウェアテストの話題

PICTを生成エンジンに使用する組み合わせテストツールTest Case Generator  

今回から数回にわたっていくつかのフリーの組み合わせテストツールを紹介していく予定です。最初に紹介するのはTest Case Generatorというツールです。

フリーの組み合わせテストツールTest Case Generatorは生成エンジンにPICTを使用します。このツールの最もユニークな点は、PictMasterの結果表に相当する機能を備えていることです。期待する結果を出力することのできるツールは非常に珍しいものです。その一方で、PICTを使用しているにもかかわらず、制約を扱うことができません。

ツールのマニュアルには期待する結果を出力できるメリットとして次の点があげられています。なおこのツールでは全数組み合わせを生成することができる点に留意してください(この場合、PICTは必要としません)。

・ソフトの仕様をもとにすべての起こりえる期待する結果を定義することで、実際にこのツールで動作させたときにどの期待する結果とも一致しない組み合わせが存在した場合、仕様のバグを発見することができる。
・この機能を逆に利用して、テストが不要な組み合わせを「期待する結果」に一致させてテストケースから除外することができる。
・パラメータの値の組み合わせによってはあるパラメータがNULL(不要)となる場合があり、それを検出させることができる。

これらの点にメリットがあることは分かりますが、制約を扱えないことで適用範囲がかなり制限されるようになると思います。マニュアルにはログイン画面のテストを例にあげて使い方が説明されています。

Test Case Generatorは次のサイトからダウンロードすることができます。

インストールは専用のインストーラを使って行います。この際、デフォルのProgram Filesフォルダにインストールした場合、テストケースを生成しようとするとインストールされたフォルダ内にファイルを作ろうとしてエラーとなってしまいます。通常、Program Filesフォルダは読み取り専用になっているのでこの動作ではうまくいきません。

インストーラでインストール先としてデスクトップなどを指定するとよいでしょう。インストールはあらかじめ作成しておいた任意のフォルダ内に行なうようにします。インストール後、フォルダ内にPICT.exeをコピーしておく必要があります。

TestCaseGenerator.exeを起動すると次に示すウインドウが画面いっぱいに表示されます。

0


パラメータと値は左上のParameters / Equivalence classesから入力します。

期待する結果を定義するにはまず左下のResultsのタブをクリックします。そして期待する結果Resultの名称とResult Typeを指定します。Result TypeにはとりあえずデフォルトのAllgemeinを指定すればよいでしょう(なぜかドイツ語が使われています)。

続いて期待する結果の一致条件を指定するために左下のRulesタブをクリックします。左上のNew ruleをクリックすると一致条件を指定する次のダイアログが表示されます。

1


左側に表示されているパラメータや値をダブルクリックすると右側の条件式の欄に入力されます。演算子は真ん中のボタンをクリックして入力します。条件式の評価の優先を指定する括弧が使えないのであまり複雑な条件は指定できないようです。

下にある「Test cases matching this condition are...」にチェックを入れると、テストケース生成時にこの一致条件に一致したテストケースは最終結果から除外されます。

最後にGeneratorとComb. depthを指定し、Generate casesのボタンをクリックすると結果が表示されます。

2


この例ではResultにABC 1、ABC 2、ABC 3の三つを指定しています。各Resultに一致したテストケースにはチェックマークが表示されます。日本語は問題なく使用できるようです。

この状態でCheckModelのボタンをクリックすると、どの一致条件にも一致しなかったテストケースが次のように赤く表示されます。

3


この機能はResultの数が多い場合にはどれにも一致しないテストケースが一目で分かるので便利だと思います。

Test Case Generatorにはこの他に主な機能として次の機能をそなえています。

(1) 生成結果も含めたテストモデル全体をファイルに保存し、後で読み込むことができる。
(2) テンポラリティファイルとして生成結果に名前をつけて保存することができ、再度呼び戻すことができる。
(3) 生成結果をSQL Server, SQL CE, Excel, XMLの各フォーマットでエクスポートすることができる。
(4) 同値分割の考え方で一時的に値に別の値(Example Data)を割り当ててテストケースを生成することができる。

Test Case Generatorは、期待する結果の機能に特化した異色の組み合わせテストツールです。せっかくPICTを使用することができるのに制約を扱う機能がないのですが、このツールの作者は制約のない場面を想定しているのだと思います。制約のないテストではそれなりに活用できるのではないかと思います。