デシジョンテーブルのテスト (例)
⚡ スマートサマリー
決定表テストは、入力の組み合わせとその期待される出力を表形式で記録するブラックボックステスト手法です。このチュートリアルでは、原因と結果の概念を説明し、ログインとアップロードの例を通して、この手法が複雑なビジネスロジックに対して高いカバレッジを提供する理由を示します。

デシジョンテーブルテストとは何ですか?
決定表テストは、さまざまな入力の組み合わせに対するシステム動作をテストするために使用されるソフトウェアテスト手法です。これは、さまざまな入力の組み合わせとそれに対応するシステム動作(出力)を表形式で記録する体系的なアプローチです。そのため、これは、 因果関係 表には、テストの網羅性を高めるために、原因と結果が記録されています。
A デシジョンテーブル これは、入力とルール、ケース、またはテスト条件を表形式で表現したものです。複雑なケースにも非常に効果的なツールです。 ソフトウェアテスト そして要件管理。決定表は、考えられるすべての条件の組み合わせを確認するのに役立ち、テスターは不足している条件を容易に特定できます。条件は、真(T)と偽(F)の値で示されます。
例1:ログイン画面の決定表
ログイン画面の決定表を作成してみましょう。
条件はシンプルです。ユーザーが正しいユーザー名とパスワードを入力すれば、ホームページにリダイレクトされます。入力内容に誤りがあれば、エラーメッセージが表示されます。
| の賃貸条件 | ルール1 | ルール2 | ルール3 | ルール4 |
|---|---|---|---|---|
| ユーザー名 (T/F) | F | T | F | T |
| パスワード(T/F) | F | F | T | T |
| 出力(E/H) | E | E | E | H |
伝説:
- T – 正しいユーザー名/パスワード
- F – 間違ったユーザー名/パスワード
- E – エラーメッセージが表示される
- H – ホーム画面が表示されます
解釈:
- ケース1 ユーザー名とパスワードの両方が間違っています。ユーザーにはエラーメッセージが表示されます。
- ケース2 ユーザー名は正しいですが、パスワードが間違っています。ユーザーにはエラーメッセージが表示されます。
- ケース3 ユーザー名が間違っていますが、パスワードは正しいです。ユーザーにはエラーメッセージが表示されます。
- ケース4 ユーザー名とパスワードは両方とも正しい。ユーザーはホームページに移動する。
これを テストケース3つのエラーケースはすべて同じルールをテストするため、2つのシナリオを作成できます。
- 正しいユーザー名とパスワードを入力し、「ログイン」をクリックしてください。すると、ホームページに移動します。
- ユーザー名またはパスワードを間違えて入力し、「ログイン」をクリックすると、エラーメッセージが表示されます。
例2:アップロード画面の決定表
次に、特定の条件下でユーザーに写真のアップロードを求めるダイアログボックスについて考えてみましょう。
- 許可されているファイル形式は「.jpg」のみです。
- ファイルサイズは32KB未満でなければなりません。
- 解像度は137×177である必要があります。
いずれかの条件が満たされない場合、システムは対応するエラーメッセージを表示します。すべての条件が満たされた場合、写真は正常にアップロードされます。
本件に関する決定表を以下に示します。
| の賃貸条件 | ケース1 | ケース2 | ケース3 | ケース4 | ケース5 | ケース6 | ケース7 | ケース8 |
|---|---|---|---|---|---|---|---|---|
| フォーマット | jpgの | jpgの | jpgの | jpgの | .jpg ではありません | .jpg ではありません | .jpg ではありません | .jpg ではありません |
| サイズ | < 32 KB | < 32 KB | 32KB以上 | 32KB以上 | < 32 KB | < 32 KB | 32KB以上 | 32KB以上 |
| 解像度 | 137x177 | 137×177ではない | 137x177 | 137×177ではない | 137x177 | 137×177ではない | 137x177 | 137×177ではない |
| 出力 | 写真がアップロードされました | 解像度の不一致 | サイズの不一致 | サイズと解像度の不一致 | フォーマットの不一致 | フォーマットと解像度の不一致 | フォーマットとサイズの不一致 | フォーマット、サイズ、解像度の不一致 |
この表から、網羅的なテストケースを8つ作成できます。
- .jpg、32 KB未満、137×177 → 写真のアップロードに成功しました。
- .jpg、32 KB未満、137×177ではない → 解像度不一致エラー。
- .jpg、32 KB以上、137×177 → サイズ不一致エラー。
- .jpg、32 KB以上、137×177以外 → サイズと解像度の不一致エラー。
- .jpg形式ではありません、32KB未満、137×177ピクセル → フォーマット不一致エラー。
- .jpg形式ではなく、32KB未満で、137×177ピクセルでもありません → フォーマットと解像度の不一致エラー。
- .jpg形式ではなく、サイズが32KB以上、137×177ピクセル以上ではありません → フォーマットとサイズの不一致エラー。
- .jpg形式ではなく、32KB以上ではなく、137×177ピクセルでもありません → フォーマット、サイズ、解像度の不一致エラー。
決定表テストが重要な理由
決定表テストは、多くの条件の組み合わせをテストし、複雑なビジネスロジックを網羅的にカバーできるため重要です。システム動作が入力値ごとに異なる場合、この手法はシンプルで読みやすい表現で十分なカバレッジを提供します。
In ソフトウェア工学境界値解析と等価分割は類似の手法ですが、システムが 同じ 多数の入力にわたる動作。動作が 今とは異なる これらの手法では、入力の組み合わせごとに十分な網羅性を保証することはできないため、決定表を用いたテストの方がより良い選択肢となる。
この表は、理解しやすく、すべての組み合わせを網羅しているため、要件定義や機能開発の参考資料としても役立ちます。入力が増えるにつれてその重要性は高まります。可能な組み合わせの数は 2^n で、n は入力数です。Web フォームでよく見られる n = 10 の場合、組み合わせは 1,024 通りになります。これらすべてをテストすることはできませんが、決定ベースのテストを使用して、豊富なサブセットを選択することができます。
デシジョンテーブルテストの利点
- 入力によってシステム動作が異なる場合、同値分割や境界値分析では不十分な場合に有効です。
- 表現がシンプルなので、解釈しやすく、開発チームとビジネスチームの両方にとって有用です。
- 効果的な組み合わせの構築を支援し、テストカバレッジの向上を保証します。
- 複雑なビジネス状況はすべて意思決定表に変換できる。
- 入力組み合わせの数が少ない場合、100%の網羅率を保証できます。
デシジョンテーブルテストの欠点
主な欠点は、入力数が増えるにつれて、表が複雑になり、管理が難しくなることです。


