注目イベント!
アドベントカレンダー2024開催中!
一年を締めくくる特別なイベント、アドベントカレンダーを今年も開催しています!
初心者からベテランまで楽しめる内容で、毎日新しい技術トピックをお届けします。
詳細はこちらから!
event banner

ペアワイズ法テストケース生成ツール「PictMaster」の制約表を使う

| 2 min read
Author: shuichi-takatsu shuichi-takatsuの画像

前回はペアワイズ法をGUIから使う便利ツール「PictMaster」の基本操作を紹介しました。
今回は「PictMaster」の「制約表」について紹介します。

テストケースに制約を付けたいとき

#

2因子網羅を効率よく生成するペアワイズ法ですが、テストケース生成時にテストケースに制約を設定したい場合が多々あります。
例えば、ある因子の水準を特定の環境にだけ割り当てたい、または割り当てたくない場合などです。

以前使用したテストケースの例題で考えてみましょう。
・OS (Windows, Linux, macOS)
・ブラウザ (Firefox, Chrome)
・Java (バージョン8, バージョン11)

上記の例では全てのブラウザが全てのOSで使用可能ですが、Windowsでのみ動作するブラウザをテストケースに組み込みたい場合を想定しましょう。

例としてインターネット・エクスプローラ(以降IEと称す)をブラウザ環境に追加します。
・OS (Windows, Linux, macOS)
・ブラウザ (Firefox, Chrome, IE) ※ただしIEはWindows限定
・Java (バージョン8, バージョン11)

何の制約も設定せずにPICTで2因子網羅のテストケースを作ると、本来は実施しない(実施できない)テストケースも一緒に生成されてしまいます。

一旦全ての組み合わせテストケースを生成しておいて、不要(実行不可能)なテストケースを後から手作業で除外することも可能ですが、人間の作業が介在するのでテストケースの抜け漏れが心配です。

上記の例のようにテストケース生成時に制約を設けたい場合には、PICTでは「制約」を使用します。
PictMasterでは「制約表」に値を設定するだけで簡単に制約を利用することができます。

制約表

#

それでは制約を設定したテストケースを生成してみましょう。
例題を以下のように設定します。
ブラウザ環境に追加した「IE」はWindows限定とします。

・OS (Windows, Linux, macOS)
・ブラウザ (Firefox, Chrome, IE) ※ただしIEはWindows限定
・Java (バージョン8, バージョン11)

パラメータ(因子)と値(水準)を以下のように設定します。

「環境設定」ボタンを押して環境設定ダイアログを開き、制約を利用できるようにします。
以下のように「制約表を使用」をチェックします。

すると、Excelシートの下側に「制約表」が表示されます。
制約表のパラメータ列にはシートに設定したパラメータ値が予め設定されています。

「制約表」に以下のように制約を設定します。(「制約1」の部分)

上表の意味は

  • 「ブラウザ」が「IE」の時は
  • 「OS」は「Windows」限定

if 'ブラウザ' = 'IE' then 'OS' = 'Windows'

と設定したことになります。

どちらの項目がIF文側になるかは、セルを着色することで指定します。
塗りつぶした方が「IF」側、
塗りつぶしていない方が「THEN」側になります。
(色に指定は無いようなので、区別しやすい色を選択しています)

セルを選択した状態でマウスを右クリックすると制約値として設定可能な値の候補が表示されますので、制約値を選択して設定します。(複数選択可)

テストケース生成

#

「実行」ボタンを押すと制約が設定されたテストケースが生成されます。

テストケース数は8通り。
IEはWindows限定になっていることがわかります。

ちなみに、制約を設定しないでテストケースを生成するとテストケースは以下のようになります。

テストケース数は9通り。
IEはLinux、macOSの条件にも含まれてしまっています。

まとめ

#

「制約表」を使うことによって、テストケースに「含めたい」または「含めたくない」条件を設定したテストケースを生成することが出来ました。
PICTには他にも色々なオプションが用意されていて、PictMasterから利用可能です。
次回も別のオプションを紹介していきたいと思います。

ソフトウェアテストに関する技法やテクニックをまとめています。

テストに活用していただければ幸いです。

豆蔵では共に高め合う仲間を募集しています!

recruit

具体的な採用情報はこちらからご覧いただけます。