Q&Aで読むソフトウエアテスト「オールペア法、直交表の基本」現場で使うためのオールペア法、直交表の基本(5)(2/3 ページ)

» 2015年06月11日 05時00分 公開
[五味弘OKI(沖電気工業)]

(2)組み合わせテスト

 組み合わせテストについては、第二回で基本的な考え方を紹介しています。因子と水準、組み合わせの強さを決定する際のコツは第三回で解説しています。

(2-1)組み合わせテストとは何ですか?

Ans.

 組み合わせテストとは、入力条件の値をいろいろと組み合わせて実施するテストです。

 全ての入力条件での値の組み合わせは膨大な数になるため、その全てをテストするのは現実的ではありません。そこで、実際には全ての組み合わせではなく、何らかの合理的な制限を設けて、組み合わせの一部のみをテストすることになります。

 組み合わせテストについては、第二回で詳述しています。



(2-2)因子や水準、禁則とは何のことですか?

Ans.

 因子(factor)とはテストの入力条件のことで、水準(level)とはその入力条件の値のことです。例えば、連載で例に挙げたアミューズメントパークの入場料の場合は、「年齢」が因子で、「20歳代」や「30歳代」などが水準になります。このように因子と水準には「抽象−具象」の関係があります。

 「禁則」とは「禁則組み合わせ」のことで、テストでは物理的にまたは機能的にあり得ない組み合わせのことを指します。テストケースから削除しなくてはいけない組み合わせです。

 具体的な禁則組み合わせの例は、第二回で紹介しています。



(2-3)因子や水準はどのように見つけるのですか?

Ans.

 対象のシステムのマニュアルや仕様書などのドキュメントに書かれている機能説明から名詞句を抽出し、それを因子候補または水準候補にします。因子と水準は「抽象−具象」の関係がありますので、この関係を元にもう一方のものを見つけるなど、ドキュメントに書かれていないものも含めて見つける必要があります。

 因子と水準発見の基本的な考え方は第二回で、因子と水準の正しい調整方法は第三回で紹介しました。



(2-4)組み合わせの強さとは何のことですか?

Ans.

 因子間の組み合わせにおいて、組み合わせる因子の個数のことです。特に強さが2のとき、つまり2因子の組み合わせのことをペアと呼んでいます。

 組み合わせの「強さ」については、第二回で解説しています。



(2-5)因子と水準の個数を調整するのはなぜですか?

Ans.

 因子または水準の個数が極端になると、例えば、3因子で30水準のようになると、強さ2のオールペア法を使っても、それほどテストケース数は減少しません。また因子数が多過ぎると、「強さ2」に限定してもテストケース数の絶対数は大きくなります。このため、組み合わせテストの相場の因子数は10個程度です。因子数が極端にこれと違う場合は、因子数を調整します。

 強さの調整方法の基本は第三回に、現場での実践的な調整方法のコツは第四回で紹介しています。



(2-6)組み合わせテストをするときに、強さはどのように決めるのですか?

Ans.

 プログラムをテストするとき、「組み合わせの強さをこれ以上増やしても、バグをあまり発見できない」という飽和する状態よりも前の段階の強さを選択するようにします。どの程度の強さでどの程度バグが発見できるかは、プログラム種別や過去の事例などから決めることになります。

 逆にツールで生成されるテストケース数から強さを決める方法もありますが、第二回第四回で示したように、これは本来的な方法ではありません。バグ発見の飽和度合いを計測した検証資料は、第四回で紹介しています。



(3)オールペア法

 本連載で紹介した「オールペア法」については、第二回で基本的な考え方を紹介、組み合わせ生成ツールについても紹介しています。

(3-1)オールペア法とは何ですか?

Ans.

 組み合わせテストで、因子の全てのペアにおいて、全ての水準の組み合わせを1回以上入力するテストのことを指します。「全組み合わせ」ではなく、「ペアに限定した組み合わせ」をテストします。詳細は第二回で解説しています。



(3-2)カバリングアレイ(被覆配列)とは何ですか?

Ans.

 オールペア法で、因子の組み合わせをペア(2因子=強さ2)に限定していたものを「強さ n(=n個の因子)」の組み合わせに拡張したテストです。しかしオールペア法と呼ぶときでも、ペア(強さ2)に限定せずにカバリングアレイの意味で使っている場合が多くなっています。詳細は第二回を参照ください。



(3-3)オールペア法のツールにはどんなものがありますか?

Ans.

 マイクロソフトが提供する「PICT」や阪大学の土屋達弘氏がBSDライセンスで公開している「CIT-BACH」など多くのツールがあります。また、「PICT」や「CIT-BACH」をエンジン部に持つExcelツール「PictMaster」もあります。

 PICT/PictMasterについては、第二回で、配布先の紹介と使い方、サンプルデータの入出力例を示しています。



(3-4)PICTで生成されるテストケースがばらばらで見にくいのですが?

Ans.

 なるべくテストケース数が最小になるようにしている関係で、人間には見にくいものになっています。

 そこで、連載第三回で示したように、PICT自身は信用して、その入力である因子と水準、禁則を人間が見るようにします。例えば、レビューではテストケースではなく、PICTの入力ファイルで行います。



Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。