コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)とは?
コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)とは、ホワイトボックステストで、テストがプログラムの内部構造をどれだけ網羅できているかを測る基準。命令網羅(すべての命令行を最低1回実行)、分岐網羅(すべての分岐先を最低1回通過)、条件網羅(分岐条件を構成する各条件式が真・偽の両方を取る)の3つが基本。命令網羅は分岐網羅に含まれる(分岐網羅を満たせば命令網羅も満たす)が、条件網羅と分岐網羅のあいだに包含関係は無い——どちらか一方を満たしても他方は満たさないことがある。両方を満たすには判定条件/条件網羅(分岐と条件の両方を網羅)が要る。
応用情報技術者試験の過去問では5回出題されています(2017年度〜2025年度)。
こーどかばれっじきじゅん
コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)の意味
ホワイトボックステストで、テストがプログラムの内部構造をどれだけ網羅できているかを測る基準。命令網羅(すべての命令行を最低1回実行)、分岐網羅(すべての分岐先を最低1回通過)、条件網羅(分岐条件を構成する各条件式が真・偽の両方を取る)の3つが基本。命令網羅は分岐網羅に含まれる(分岐網羅を満たせば命令網羅も満たす)が、条件網羅と分岐網羅のあいだに包含関係は無い——どちらか一方を満たしても他方は満たさないことがある。両方を満たすには判定条件/条件網羅(分岐と条件の両方を網羅)が要る。
コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)の具体例
if (a && b) という条件を持つプログラムで、分岐網羅なら「全体として真になる場合」と「偽になる場合」の2ケースで足りるが、条件網羅ならaとbそれぞれの真偽の組み合わせをより広く確認する必要がある。
コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)は試験でどう引っ掛けられる?
「条件網羅を満たせば分岐網羅も満たす」は成り立たない。条件網羅は個々の条件式が真・偽の両方を取ればよいため、組み合わせ次第では分岐の一方(例えば全体が真になるケース)を一度も通らないことがある。両方を満たすには判定条件/条件網羅が要る。また命令網羅を満たしても、条件が偽になる経路を通らないため分岐網羅は満たさない。網羅率100%は「そのコードを通った」ことの保証にすぎず、書かれていない処理の欠落は発見できないので、バグが無いことの証明にはならない。
コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)と関連する用語
コードカバレッジ基準(命令網羅・分岐網羅・条件網羅)が出た過去問
流れ図において,分岐網羅を満たし,かつ,条件網羅を満たすテストデータの組みはどれか。
正解:(x=1,y=2) と (x=0,y=1) と (x=0,y=2)
要点:分岐網羅は判定の真偽、条件網羅は各条件の真偽を通すこと
分岐網羅は各判定が真になる場合と偽になる場合を通すこと、条件網羅は判定を構成する個々の条件が真と偽の両方を取ることを求める。三つのデータを使うと、一つ目の判定が真と偽の両方を通り、二つ目の判定も真と偽を通り、さらに三つの条件それぞれが真・偽の両方の値を取る組合せになっている。
出典:平成29年度 春期 応用情報技術者試験 午前 問48(IPA)あるプログラムについて、流れ図で示される部分に関するテストを、命令網羅で実施する場合、最小のテストケース数は幾つか。ここで、各判定条件は流れ図に示された部分の先…
正解:3
要点:命令網羅の最小テスト数は各段の最大分岐数で決まる
命令網羅は、すべての命令(処理)を少なくとも1回実行すればよい基準である。この流れ図は分岐先が3つ、2つ、3つの段が直列に並ぶので、1回のテストで各段から1つずつ処理を通せる。したがって最も多い分岐数である3回のテストで全処理を網羅できる。
出典:令和3年度 春期 応用情報技術者試験 午前 問48(IPA)流れ図で示したモジュールを表の二つのテストケースを用いてテストしたとき、テストカバレージ指標であるC0(命令網羅)とC1(分岐網羅)とによる網羅率の適切な組みは…
正解:C0=100%, C1=80%
要点:C0は命令、C1は分岐の網羅率で、C0が満たされてもC1は残る
テストケース1(全て0)は命令1・2・4を、テストケース2(全て1)は命令3・5を通るので、5つの命令は全て実行され、C0は100%です。一方、分岐は5つの判定で計10通りありますが、内側の2つの判定(W・XおよびY・Zがともに0でない場合の判定)は偽側の経路が一度も通らないため、8/10で80%となります。
出典:令和4年度 秋期 応用情報技術者試験 午前 問48(IPA)次の流れ図において、判定条件網羅(分岐網羅)を満たす最少のテストケースの組みはどれか。
正解:(1) A=1, B=0 (2) A=1, B=1
要点:判定条件網羅は各判定の真と偽を1回ずつ通せばよい
判定条件網羅は、各判定について真と偽の両方の結果を少なくとも1回ずつ通せばよい。A=1,B=0では最初の判定が真となり、その結果C=1になるので2つ目の判定も真を通る。A=1,B=1では最初の判定が偽となりC=2になるため、2つ目の判定も偽を通る。この2件で両判定の真偽が網羅でき、これが最少である。
出典:令和4年度 春期 応用情報技術者試験 午前 問47(IPA)ソフトウェアの保守性を定量評価するときに使用する指標として,適切なものはどれか。
正解:(適正規模の基準を満たすプログラムの数)÷(プログラムの総数)
要点:保守性の指標はプログラム規模の適正さなど、変更しやすさを測る値
保守性は、後から修正・改良しやすいかを表す品質特性である。プログラムが適正な規模に収まっているかは、理解しやすさや変更の局所性に直結するため、保守性の定量指標として使える。不具合件数の密度は信頼性、分岐網羅率はテストの十分性、残存エラー数の推定は信頼性評価の指標である。
出典:令和7年度 春期 応用情報技術者試験 午前 問47(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。