2014/11/28のソフトウェアテスト勉強会のレポート。
今回の勉強会は、組み合わせテストの項目を簡単に作成するPictMasterの勉強。
インストール
ここからPistMasterをダウンロード。
PictMaster プロジェクト日本語トップページ - OSDN
ダウンロードしたファイルにユーザーズマニュアルが含まれてるので、その手順に従ってインストールする。
実践
基本
フォント4種類と、それぞれのフォントで太字、斜体、下線、影付きの有無を組み合わせるテスト項目。
パラメータ名と、それぞれのパラメータの値を','区切りで入力する。
(日本語入力でカンマを入力するのはちょっと面倒だけどそこは我慢)
実行ボタンを押すと、a.xlsというファイル名で、以下が出力される。
各項目について、2項目の組み合わせ(フォント-太文字、太文字-斜体字など)のパターン全てが出力されている。
組み合わせ項目数を変えたい場合は、環境設定->組み合わせるパラメータ数 を変更する。
実行ボタン押下すると、3項目の組み合わせ(フォント-太文字-斜体字など)全てが出力される。
なお、環境設定でシードの値を変えると、別の組み合わせパターンが出力される。 (シードの値を変えなければ抽出される項目は常に同じ。)
同値分割
複数の値がテストとして同じ意味を持つ場合、同値分割によりテスト項目数を減らす事が出来る。 同値は、各値を'|'で区切って指定する。
出力した結果。フォント4種類の値を同値としているため、テスト項目が減っている。
排他指定と結果表
Webからの入力項目の試験。 名前、メールアドレスは、入力がなければエラーとする。
名前:未入力とメールアドレス:未入力を組み合わせた試験を行うと、エラー発生時、どちらの未入力が原因でエラーになったのか分からなくなるため、各試験パターンについて、未入力とするのは、名前とメールアドレスのどちらかのみとする必要がある。 この場合、組み合わせてはいけない値は、'~'から始まるように記載する。
また、結果表を使用し、名前未入力、メールアドレス未入力の場合の結果もテスト結果として出力してみる。 結果表は「環境設定」->「結果表を使用」にチェックを入れる事により使える。
実行結果。 名前=未入力とメールアドレス=未入力が組み合わさったパターンは出力されない。 また、各試験パターンについて、結果も出力される。
特定条件でのみ許容するパターン
ラーメン注文のパターン試験。ただし、以下の条件あり。
- 紅しょうがは、とんこつの場合のみ可。
- すりおろしニンニクは、とんこつ以外の場合のみ可。
- とんこつの場合、麺の茹で方はバリカタ、カタのみ可。
この場合、制約表により組み合わせの条件を指定し、制約条件になる方("if(トッピング==紅しょうが) then スープ=とんこつ"のif文になる方)に色を付ける。
色は何でもよい。
制約表で「~以外」という指定を行う場合、#から始まる値を指定する。今回は「#とんこつ」で「とんこつスープ以外」を指定している。
*(ワイルドカード)も使用できる。ワイルドカードは部分一致する条件の指定に使用する。
なお、残念ながらワイルドカードのみの指定はできなかった。
実行結果。
- トッピング=紅しょうがはスープ=とんこつとの組み合わせのみ出力されている
- トッピング=すりおろしニンニクはスープ≠とんこつの組み合わせのみ出力されている
- スープ=とんこつの茹で方はカタ、バリカタのみ出力されている
「ありえない組み合わせを試験パターンから除く」ための指定なので、「該当のパターンを指定されたらエラーにする」ような試験では使用しないよう注意。
応用
問題内容。
問題には記載がないが、ブラウザのパターンも組み合わせに入れる。
自分が作成したもの。
他の参加者が作成したシンプルな回答。
自分が作成したものと比べると、こっちの方がすっきりして見やすい。レビューもしやすそう。
PictMasterのマニュアルを見ると、他にも色々機能があるっぽい。
今まで組み合わせテスト作る時は、マトリクスで組み合わせを検討してたけど、こちらの方が簡単だし、パターンの抜けがないので便利。 次の組み合わせテストの項目作成で使ってみよう。