ハマログ

株式会社イーツー・インフォの社員ブログ

テスト設計技法 – デシジョンテーブルテスト

どうもーyasuです~ そろそろ涼しくなってきたかな?

一つ報告、8/25にテスト系の資格 JSTQB を受験してきました!

結果はブログに報告します。受かってるといいな~

 

前回のブログで記載した通り、今回はデシジョンテーブルテストについて記載していこうと思います。

【デシジョンテーブルテスト】

ブラックボックステスト設計の一つで、パターン分けを全網羅する表を作り、その表をもとに試験を行っていく技法です。とくに、有限の組み合わせを効率的・網羅的に試験したいときに効果を発揮します!

例えば、以下のようなシステムの場合

バスの料金を出力するシステム。仕様は以下の通り

大人:現金払いの場合は220円、ICカード払いの場合は216円

子供:大人料金の半額

※夏休み期間のみ、子供は現金払いで50円となる

 

デシジョンテーブルテストを行うときは、まずデシジョンテーブルを作成します。

デシジョンテーブルとは、条件と組み合わせ、結果を一つに纏めた表です。

例の場合の条件だと

年齢(大人/子供)、支払方法(現金/ICカード)、夏休み期間(Yes/No)

の3種類があります。これらを全て組み合わせます。そうすると、下の表が出来上がります。

※ちなみに、全ての組み合わせといっても、影響を及ぼさない組み合わせの場合は省略することも可能です。(例だと、年齢が大人の場合は、夏休み期間の有無に関わらず料金が変わらないため、場合分けしておりません。)

デシジョンテーブルができたら、あとは試験を行うだけです。

各列の条件を満たすように各パターンを実施します。例の場合だと6パターンですね。

これで、全てのパターンを網羅した試験をすることができました。

今回の例だとパターンが少ないですが、場合分けが複雑になってくると、より効果が発揮できる技法です!

 

補足しておくとデシジョンテーブルテストは、結果が無限のパターン存在するようなシステムとは相性が悪いです。

日付を入力して検索結果を表示するシステムで、日付ごとに結果が変わるような場合、デシジョンテーブルを作ろうとすると、結果の列がいつまでたっても収束しないのでテーブルが作れません。

その場合は、ペアワイズ(オールペア法)や直交表などを用いるのがいいのですが、それはまたの機会に記載致しますー

 

次回は、状態遷移テストについて記載する予定です~

 

ちなみに、ダイエットは行って戻ってな感じー

一瞬だけ-10kgまでたどり着いた!!(すぐ戻ったけど…)

Testtestingテストテストケーステスト設計技法デシジョンテーブルテスト分析

  yasu   2018年9月11日


関連記事

ReactPHPをLaravelで実行してみた

以前、ReactPHPを使用していたことがあるので、Laravelで実行させてみ…

最近シチが旨い!!

どーも!! 相変わらず仕事と全然関係ない話題をブログしちゃってすいませんm(._…

ALBでメンテナンスページ表示

AWS Application Load Balancer の固定レスポンス機能…


← 前の投稿

次の投稿 →