GIHOZの使い方:デシジョンテーブルの整理(圧縮)

日頃からテスト技法ツールGIHOZをご利用いただき誠にありがとうございます。

 

前回のGIHOZの使い方の記事ではデシジョンテーブルの使い方・作り方をご紹介いたしました。使ってみたけどこのままでは実行しなくてもいいパターンも網羅されてしまってそのままだと使いづらい等ありませんでしたでしょうか?

この記事では作成したデシジョンテーブルの整理(圧縮)の解説と、GIHOZのデシジョンテーブルでの操作をご紹介いたします。

 

デシジョンテーブルの整理(圧縮)


デシジョンテーブルを用いたテストケースは、条件の組み合わせを全網羅する形で作成すると膨大な数になりがちです。条件の分岐処理のフローが明確になっていて、確実にそのフローの通りに動くと判断できる場合、デシジョンテーブルを整理することでテストの件数を削減することが可能です。(ただし、ブラックボックステストでは全網羅する方が良い場合が多いです。)

上記の内容を踏まえて、前回の記事で作成した以下のテストを整理してみましょう。

gihoz.hatenablog.com

f:id:gihoz:20210715165648p:plain

このテストケースは以下のフローチャートのように処理が実行されている場合は整理することができます。

f:id:gihoz:20210930172330p:plain

このフローチャートが正しい場合はサービスタイム外であれば確実に割引なしになり、またどちらかのサービスタイム中で対象商品であれば会員であるかどうかは関係なく10%か15%割引になるということがわかります。
これらを踏まえた上で、以下のようにテストケースを整理します。

f:id:gihoz:20210930151021p:plain

上のようにマークを外したテストケースが今回省略可能なテストケースになります。

2のテストケースはイブニングサービスタイム中で、対象商品である場合、会員かどうかは関係なく10%割引のためテストケースの整理ができます。

6のテストケースは2と同じようにナイトサービスタイム中で、対象商品であるため、会員かどうかは関係なく15%割引になるためテストケースの整理ができます。

10~12のテストケースについてはサービスタイム外の場合になるのですが、どの条件でも割引なしとなるのでテストケースを省略することができます。

マークを外したテストケースを列ごと削除し、動作に影響しない条件を「-」に変更すると、以下のようになります。列の削除は右クリックメニューから実施できます。

f:id:gihoz:20211004115347p:plain

こうしてデシジョンテーブルの整理をすることで、デシジョンテーブルが見やすくなるとともに、テストの件数を削減することができました。

初めにお伝えしたように、デシジョンテーブルを整理する場合、条件の分岐処理のフローが明確になっている必要があります。フローが明確でない場合にむやみにテストケースを省略すると、テスト漏れに繋がる可能性がありますので、ご注意ください。

この記事執筆時点のGIHOZではサポートしていませんが、原因結果グラフやCFD法といったテスト技法を用いると、最初から整理(圧縮)された状態のデシジョンテーブルを得ることができます。これらのテスト技法についてはインターネットで検索すれば解説が見つかりますので、興味のある方は調べてみてください。

 

今回の記事で紹介したデシジョンテーブルは以下からご覧いただけます。

整理前のデシジョンテーブル

整理後のデシジョンテーブル

 


 

今回はデシジョンテーブルの整理(圧縮)の方法について解説しました。適切にデシジョンテーブルを整理することで、テストの件数を削減することができます。条件の分岐処理のフローが明確になっている場合は、デシジョンテーブルを整理することをぜひご検討ください!

今後ともGIHOZをよろしくお願いいたします。

  

テスト技法ツールGIHOZ アカウント登録はこちら

テスト技法ツールGIHOZ|ソフトウェアテスト・第三者検証のベリサーブ (veriserve.co.jp)