テストケースの組み合わせテクニック

f:id:tstr_support:20200909181502p:plain

こんにちは🍂TESTRUCTUREチームです。
いつもTESTRUCTUREをご利用いただきありがとうございます。

みなさんはテスト条件のカバレッジをどのように作成していますか?
全ての入力条件で値の組み合わせを考えると、膨大な数になりテストにとても時間がかかってしまいます。実務では必要に応じてカバレッジを決定しますが、合理的且つ効率的なテストを行うにはどのような網羅基準でテストするかはとても重要になります。


TESTRUCTUREでは「テストカバレッジアイテムの決定」画面で、テストするフィーチャーごとに使用するテストカバレッジアイテムの候補(上位階層・下位階層)を指定した後、テストカバレッジアイテムの網羅基準を指定します。この画面で、出来あがるテストケースのカバレッジを決めることができます。

f:id:tstr_support:20200910100245p:plain

今回は各網羅基準を選んだ際に出来上がるテストケースのイメージをご紹介します。

総当たり

全ての候補の組み合わせについて、総当たりでテストケースを作成します。
テストケースが最も多くなります。
組み合わせ内容が複雑な場合や、不具合が発生すると非常に困る優先度の高いものは、
こちらの網羅基準を選びます。

f:id:tstr_support:20200908122147p:plain

各水準1回

各上位階層の下位階層が最低1回は出現する組み合わせです。
項目数は一番項目数の多い下位階層の項目数と一致します。
上位階層に対して、同じ下位階層を選ばれることを防ぎたいときに使用します。

f:id:tstr_support:20200908122336p:plain

組み合わせずに候補を網羅

全ての候補が1回登場する様に、候補を組み合わせずにテストケースを作成します。

f:id:tstr_support:20200911161712p:plain

手動で組み合わせ

組み合わせの自動生成は行わず、テストカバレッジアイテムとテストケース画面で
手動で組み合わせを作成します。

組み合わせ(2因子) 

テストカバレッジアイテムの候補の全てのペアにおいて、全ての候補(下位階層)の組み合わせが1回以上出現するような組み合わせ方法です。「組み合わせ(2因子) 」では2つの候補(上位階層)の組み合わせを網羅します。

f:id:tstr_support:20200911144029p:plain

組み合わせ(3因子)

「組み合わせ(3因子) 」では3つの候補(上位階層)の組み合わせを網羅します。

f:id:tstr_support:20200911144636p:plain

網羅する基準はプロジェクトなどによって決めていきますが、効率的なテストケースを作成するためにはどのような組み合わせが良いのか、改めてテストケースの作成方法を見直してみてはいかがでしょうか。

引き続き、TESTRUCTUREのご活用のほど、どうぞよろしくお願いいたします。