カバレッジ
カバーしている範囲だよ
あるいはテストカバレッジ(テストにおいて全体のどれくらいの確認が終わったか)のことだよ
簡単に書くよ
カバレッジ(英:coverage)とは
「あ~、こいつはね。全体に対して、これくらいをカバーしているよ(したよ)」的なことをカッコ付けて言った表現
です。
システムテストの話で出てきた場合は
「テストを全部やると、これだけ確認できるはずだよ。それに対して今はこれだけの確認が終わってるよ」な割合(テストカバレッジ)のこと
を意味します。
詳しく書くよ
サクっと一言で説明すると
カバーしている(した)範囲
をカッコ付けて言った表現が「カバレッジ」です。
全体は、これくらいです。
ピヨ太君は、これくらいカバーしています。
ピヨ太君のカバーしている範囲がピヨ太君のカバレッジです。
……というのが「どこまで電波が届くか?」や「どこまで○○を適用するのか?」といった話で出てくる「カバレッジ」です。
影響範囲とか適用範囲とも言えますかね。
カバーしている(した)範囲です。
「カバレッジ」という表現は、プログラムのテストの話で よく出てきます。
とはいえ、難しく考える必要は ありません。
考え方は一緒です。
テスト全体で、これくらいの確認をします。
そのうち、これくらいの確認が終わりました。
確認が終わった範囲、言い方を変えると
確認が終わった割合
がカバレッジ(テストカバレッジ)です。
日本語で「網羅率」と表現されたりもします。
例えば、そうですね。
ここにピヨ太プログラムが ありました。
ピヨ太プログラムは
1.お腹が空いた
2.嫌なことがあった
のどちらかの条件を満たすと、ケーキを食べます。
そんな役立たずなプログラムです。
ピヨ太プログラムの処理を、もう少しプログラムっぽく書くと以下のようになります。
if((お腹が空いた? == Yes) or (嫌なことがあった? == Yes)){
ケーキを食べる
}
このピヨ太プログラムに対して「処理が枝分かれしたときの行き先を全部1回は確認するぜ!」な方針でテストをやることにしました。
具体的には、ピヨ太プログラムが
1.ケーキを食べる
2.ケーキを食べない
の2つのパターンを、それぞれ確認します。
最初の時点では何も確認できていません。
カバレッジは0%です。
次にピヨ太プログラムを
1.お腹が空いた? → Yes
の条件に設定してテストをやりました。
このテストにより
1.ケーキを食べる
分岐に入ったときの処理に問題がないことを確認できました。
これでカバレッジは50%です。
全部で2つ確認するつもりです。
そのうちの1つが確認できました。
半分終わった計算です。
次にピヨ太プログラムを
1.お腹が空いた? → No
2.嫌なことがあった? → No
の条件に設定してテストをやりました。
このテストにより
2.ケーキを食べない
分岐に入ったときの処理に問題がないことを確認できました。
これでカバレッジは100%です。
全部で2つ確認するつもりです。
そのうちの2つとも確認できました。
全部終わった計算です。
この例で挙げたような
「全部で、これだけ確認するよ」に対する「これだけ確認できたよ」の割合
がテストにおけるカバレッジです。
一言でまとめるよ
まぁ「カバレッジ」って単語が出てきたら「どれくらいカバーしているか(したか)なんだな~」と お考えください。






