auの日記

プログラミング初心者の日記。(auはハンドルネームです)

プログラミングで使われるカバレッジとは

auです。

システムテストで使われる、カバレッジという用語があるので調べてみました。

カバレッジとは

カバレッジとは、日本語で網羅率という意味で、どれだけ対象のコードのパターンを実行したかという割合のことです。

カバレッジが高いというと、テストしたコードの割合が多く、カバレッジが低いと、テストしたコードの割合が低いということです。

カバレッジにも種類があり、どれだけのコード行が実行されたかを示す「行カバレッジ」や、どれだけのブロックを実行されたかを示す「ブロックカバレッジ」があります。

また、C0~C3という3段階に分かれて呼ばれているカバレッジもあります。

C0: 命令網羅率 実行可能命令のうち、実行された命令の割合
C1: 分岐網羅率 判定条件のうち、実行された判定条件の割合
C2: 条件網羅率 全ての条件の組み合わせのうち、実行された条件の割合

C1とC2は似ていますが、ifで、orやandを使って一つ一つのTrue/Flaseを見るのがC2です。

C1はif文の結果だけを見るのに対し、C2はifの条件式一つ一つをみている感じですね。