
JSTQBのホワイトボックステスト技法の中に出てくる
- ステートメントテストとカバレッジ
- デシジョンテストとカバレッジ
ごっちゃになって覚えやすいこの2つのキーワード。
まず言葉を分解して覚えた方が理解しやすいです。
カバレッジとは?
一言で言うと、「網羅率」です。
なので「●●テストのカバレッジ」と言うと、
テストでどれくらい網羅したか、の事を言ってます。
ステートメントテストとは?

コード内の実行可能ステートメントをテストする事です。
つまり、↑の図で言うと「命令」の部分を通るテストをする事。
デシジョンテストとは?
コード内の判定をテストし、実行したコードを判定結果に基づいて評価する事です。
つまり、↑の図で言うと「判定」の部分を通って、TRUEの場合も、FALSEの場合も両方のパターンテストする事。
例えば
↑の図で言うと、
「判定」のTRUEの場合だけテストした場合
- ステートメントテストのカバレッジは100%です
- デシジョンテストのカバレッジは50%です。
「判定」のTRUEの場合とFALSEの場合、2ケーステストした場合
- ステートメントテストのカバレッジは100%です。
- デシジョンテストのカバレッジも100%です。
「判定」のFALSEの場合だけテストした場合
- ステートメントテストのカバレッジは 0%です。
- デシジョンテストのカバレッジは50%です。
以上、もっと詳しく知りたい方は、JSTQB Foundation Levelのシラバスをご参考に。
参考文献
