C2カバレッジ
C2カバレッジ(C2 coverage)
C1カバレッジ← C2カバレッジ → C3カバレッジ
※最近複合条件カバレッジ(MCC)をC2カバレッジとされているものが出てきてしまったので元文献か本の文献を当たる必要がありそう
MCCをC2カバレッジとしている例
カバレッジとは?ソフトウェア分野における基準や計測方法を解説|ソフトウェアテストのSHIFT. 2023-11-01
コードカバレッジ 7つの種類とコード例を紹介!知っておくべき落とし穴| Qbook. 2025-01-30
C2をMCCとしているのは上記2つしか見当たらないし、テストのツールを作っているテストベンダーのページではC2は単純条件カバレッジと言っているし間違いと言ってよい
調査ページ: C2カバレッジが複合条件網羅(MCC)かどうか
そもそもC0~C2はわかりにくく間違えやすいので条件網羅率とか、単純条件カバレッジと言っていった方がよい
C2: 条件網羅率(CC: Condition Coverage、条件カバレッジ、単純条件カバレッジ)
C2カバレッジはそれぞれの条件文における真偽が少なくとも1回は実行されること
Aという条件があったとき
Aは判断文であり、条件文
真、偽のとき少なくとも1回実行される
B and Cという条件があったとき、
B and Cは判断文
B, Cは条件文
真 真、偽 偽、真 偽、偽 真のとき少なくとも1回実行される
code:memo
function hogepiyo(input1, input2) {
//条件分岐1
if (input1 > 10) {
//処理1
} else {
//処理2
}
//条件分岐2
if (input1 % 2 == 0 || input2 % 3 == 0) {
//処理3
} else {
//処理4
}
}
条件分岐1(2ケース) * 条件分岐2(4ケース) = 8ケース
code:memo
input1 input2 条件分岐1 条件分岐2-1 条件分岐2-2
(input1 % 2 == 0) (input2 % 3 == 0)
12 3 True True True
12  4 True True False
13 3 True False True
13 4 True False False
8 3 False True True
8 4 False True False
9 3 False False True
9 4 False False False
code:memo
条件分岐1 × 条件分岐2-1 × 条件分岐2-2
= {True, False} × {True, False} × {True, False}
= {
(True, True, True), (True, True, False), (True, False, True), (True, False, False)
, (False, True, True), (False, True, False), (False, False, True), (False, False, False)
}
確認用
Q. C2カバレッジ
参考
カバレッジ(網羅率)分析とは | 静的解析ツール・単体テストツール C/C++test | テクマトリックス株式会社
テストカバレッジの概念の紹介(C0/C1/C2)
C2カバレッジとは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
メモ
カバレッジの種類~C0・C1・C2・MCC~ - NRIネットコムBlog
調査用
Google.icon C2カバレッジ(日)
Google.icon C2 coverage(英)
Wikipedia.icon
C2カバレッジ - Wikipedia(日)
C2カバレッジ(検索) - Wikipedia(日)
Wikipedia.icon
C2 coverage - Wikipedia(英)
C2 coverage(検索) - Wikipedia(英)
#カバレッジ