カバレッジ【coverage】カバー率/網羅率
カバレッジとは?
テストカバレッジ (コードカバレッジ)
ソフトウェア開発においてカバレッジという場合、多くは「テストカバレッジ」または「コードカバレッジ」を指す。プログラムに対して実施したテストがソースコードのどの程度を検証できているかを示す指標であり、テストの十分性を定量的に評価するために用いられる。値が高いほど検証済みの範囲が広く、未検出のバグが残りにくいとされる。
テストカバレッジには、何を測定単位とするかによって「ステートメントカバレッジ」(命令網羅率)、「ブランチカバレッジ」(分岐網羅率)、「コンディションカバレッジ」(条件網羅率)などがある。ステートメントカバレッジはコード内の命令文のうち実行されたものの割合、ブランチカバレッジはif文などの分岐について真偽両方の経路が実行された割合、コンディションカバレッジは条件式を構成する各条件の真と偽の組み合わせのうち試した組の割合をそれぞれ示す。
これらの測定基準はより厳密になるほど検証の精度が増すが、カバレッジの値が高いことが必ずしもソフトウェアの品質を保証するわけではない。コードの大部分が実行されていても、期待される動作が正しく検証されていなければ不具合を見逃す可能性がある。そのため、テストカバレッジはテスト内容の妥当性と併せて評価される。近年では継続的インテグレーション(CI)のプロセスにカバレッジ測定ツールを組み込み、品質管理を自動化する手法が一般的となっている。
エリアカバレッジ
通信の分野では、移動体通信網(携帯電話網)において電波の送受信が可能な地域の範囲を「エリアカバレッジ」または「カバレッジエリア」と呼ぶ。日本では「通話エリア」「サービスエリア」と呼ばれることが多い。単一の無線基地局が到達できる空間的な範囲を指す場合と、通信事業者のネットワーク全体がカバーする人口や面積の比率を指す場合がある。後者は「人口カバー率」「面積カバー率」として公表されることもある。
