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






