[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

複合条件網羅 (C2)

pointこの用語のポイント

pointテストの方針だよ

point条件の組み合わせを、すべて確認できればOKだよ

スポンサーリンク

簡単に書くよ

複合条件網羅 (C2)とは

「どれくらい、しっかりテストする?」の方針のひとつ
であり

「条件によって分岐する処理が出てきたとき、取り得るすべてのパターンを確認するぜ!」になるようにテストを設定すること
です。

image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「条件分岐処理」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は、適当に読み飛ばしてください。

条件分岐処理は「これだったら、あれをして。これじゃなかったら、それをして」のように、条件を満たすかどうかでプログラムさんにやらせることを変える命令です。
少しプログラミングよりな説明をすると、if文とか、switch文とかを使って書く処理です。

複合条件網羅

一般的なプログラムでは、途中で処理が条件分岐することも少なくありません。

以上を踏まえて、条件分岐な処理に対して「取り得るパターンを、すべて確認できればテストはOKだよね?」なテスト方針が「複合条件網羅」です。
たまに「C2」と表現されることもあります。
※正確には「条件網羅」と呼ばれる方針を指す呼び名が「C2」です。複合条件網羅は条件網羅の仲間なので、同じように「C2」と表現しているのでしょう。

「条件」とか言われても、よく分からない人は

「ここの値が変わったら処理の行き先が変わるかもね」な要素

と解釈してください。
「ここの値が変わったら処理の行き先が変わるかもね」な要素が複数ある場合に、すべての組み合わせパターンを最低1回は確認するのが複合条件網羅です。

例えば、そうですね。
ここにピヨ太プログラムがありました。

複合条件網羅2

ピヨ太プログラムは

1.お腹が空いた
2.嫌なことがあった


のどちらかの条件を満たすと、ケーキを食べます。

複合条件網羅3

そんな役立たずなプログラムです。

ピヨ太プログラムの処理を、もう少しプログラムっぽく書くと以下のようになります。

if((お腹が空いた? == Yes) or (嫌なことがあった? == Yes)){
  ケーキを食べる
}


複合条件網羅4

ここで「処理が枝分かれするための条件」に注目してください。

ピヨ太プログラムで登場する条件(枝分かれの行き先が変わる要素)は

1.お腹が空いた?
2.嫌なことがあった?


の2つです。

複合条件網羅5

それぞれの条件は、YesかNoになります。

複合条件網羅6

つまり、条件の組み合わせは

1.お腹が空いた? → Yes、嫌なことがあった? → Yes
2.お腹が空いた? → Yes、嫌なことがあった? → No
3.お腹が空いた? → No、嫌なことがあった? → Yes
4.お腹が空いた? → No、嫌なことがあった? → No


の4パターン考えられます。

この4パターン全部を確認できるようにテストするのが「複合条件網羅」です。
ピヨ太プログラムを

1.お腹が空いた? → Yes
2.嫌なことがあった? → Yes


にして動かすテストと

1.お腹が空いた? → Yes
2.嫌なことがあった? → No


にして動かすテストと

1.お腹が空いた? → No
2.嫌なことがあった? → Yes


にして動かすテストと

1.お腹が空いた? → No
2.嫌なことがあった? → No


にして動かすテストをやれば複合条件網羅になります。

複合条件網羅7

別に難しく考える必要はありません。
「複合条件」と書いてあると難しく見えますけどね。
意図するところは「条件の組み合わせ」です。

すべての複合条件(枝分かれの行き先が変わる要素の組み合わせ)を網羅したらテストを終わりにしよう!

なテスト方針が複合条件網羅です。

image piyo2

一言でまとめるよ

まぁ「複合条件網羅」って単語が出てきたら「枝分かれ条件の組み合わせパターンを、すべて確認できたらOK!なテスト方針なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク