C0カバレッジ
テスト全体に対して、どれくらいの確認が終わったか?だよ
テスト方針は命令網羅だよ
命令網羅そのものを意図している場合もあるよ
簡単に書くよ
C0カバレッジ(読:シーゼロカバレッジ 英:C0 coverage)とは
「命令網羅率」のこと。
用語の中身としては
「全部の処理を1回は通りやがれ!」になるように設定してやるテスト(命令網羅でやるテスト)における「テストを全部やると、これだけ確認できるはずだよ。それに対して今はこれだけの確認が終わってるよ」な割合のこと
です。
あるいは
命令網羅(「すべての処理を通ったらOK!」なテスト方針)のこと
を意図している場合も あります。
詳しく書くよ
「C0」+「カバレッジ」で「C0カバレッジ」です。
C0は「命令網羅」の別の表現です。
C0と命令網羅は同じものだと解釈して かまいません。
命令網羅は「全部の処理を通ればテストはOKだよね?」なテスト方針です。
プログラムというのは、いろいろな「処理」をします。
その処理を少なくとも1回は通るようにテストをするのが命令網羅です。
※詳細は、用語「命令網羅」の説明を ご覧ください。
カバレッジは、今回は「テストカバレッジ」の省略表現です。
テストカバレッジは「全部で、これだけ確認するよ」に対する「これだけ確認できたよ」の割合です。
テスト全体で、これくらいの確認をします。
そのうち、これくらいの確認が終わりました。
確認が終わった範囲、言い方を変えると、確認が終わった割合がテストカバレッジです。
日本語で「網羅率」と表現されたりもします。
以上を踏まえて
「命令網羅でテストをやってるんだけどさ~。何割くらい確認が終わったかな?」を何となく数字で表したやつ
が「C0カバレッジ」です。
日本語で「命令網羅率」とも呼ばれます。
例えば、そうですね。
ここにピヨ太プログラムが ありました。
ピヨ太プログラムは
1.お腹が空いた
2.嫌なことがあった
のどちらかの条件を満たすと、ケーキを食べます。
次に
1.眠い
の条件を満たすと、お昼寝をします。
そんな役立たずなプログラムです。
ピヨ太プログラムの処理を、もう少しプログラムっぽく書くと以下のようになります。
if((お腹が空いた? == Yes) or (嫌なことがあった? == Yes)){
ケーキを食べる
}
if(眠い? == Yes){
お昼寝をする
}
ここで「処理」に注目してください。
ピヨ太プログラムがやるかもしれない処理は
1.ケーキを食べる
2.お昼寝をする
の2つです。
命令網羅で確認することは
1.ケーキを食べる
2.お昼寝をする
の2つの処理です。
そのうち1つの確認が取れていれば、C0カバレッジは50%になります。
2つとも確認が取れれば、C0カバレッジは100%になります。
以上が、私の理解しているC0カバレッジの説明です。
世の中には「命令網羅」そのものを意図してC0カバレッジと表現する人もいます。
どちらを意図しているかは文脈から判断してください。
なお、私自身は
C0カバレッジ = 命令網羅で確認が済んだ割合
と解釈しています。
カバレッジ(テストカバレッジ)の意図するところが「これだけ確認できたよ」な割合だからです。
一言でまとめるよ
まぁ「C0カバレッジ」って単語が出てきたら「すべての処理を通ったらOK!な方針でやっているテストにおける、確認が終わった部分の割合なんだな~」と お考えください。
おまけ
■訳してみるよ
「C0」は、そのまま「C0」でお願いします。
「coverage(カバレッジ)」の意味は「適用範囲」とかです。
何となく くっつけると
C0の適用範囲
となります。
■検索してみる?






