カバレッジ(Coverage)は、ソフトウェアテストやコード解析の文脈で使用される用語です。カバレッジは、特定の基準に基づいてテストや解析がどれだけソースコードをカバーしているかを示す指標です。
主なカバレッジの種類としては、以下のようなものがあります。
- ステートメントカバレッジ(Statement Coverage):ソースコードの各ステートメント(文)が実行される割合を測定します。ステートメントカバレッジは、テストケースが各ステートメントを実行するかどうかを評価します。
- ブランチカバレッジ(Branch Coverage):ソースコード内の条件分岐の各ブランチ(分岐先)が実行される割合を測定します。ブランチカバレッジは、すべての条件分岐が真と偽の両方をカバーすることを確認します。
- 関数カバレッジ(Function Coverage):ソースコード内の各関数が呼び出される割合を測定します。関数カバレッジは、すべての関数がテストされることを確認します。
- 行カバレッジ(Line Coverage):ソースコードの各行が実行される割合を測定します。行カバレッジは、各行が実行されるかどうかを評価します。
カバレッジの目標は、ソフトウェアテストやコード解析によってできる限り多くのコードをカバーすることです。高いカバレッジを達成することで、ソフトウェアの品質向上やバグの早期発見が可能となります。ただし、カバレッジが高いということはすべての状況を網羅しているわけではないため、テストの完全性を保証するものではありません。