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

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

「判定条件網羅」と「分岐網羅」の違い

スポンサーリンク

それぞれの用語の意味


用語意味
判定条件網羅「処理が枝分かれしたときの行き先を全部1回は確認するぜ!」になるようにテストを設定すること
分岐網羅「処理が枝分かれしたときの行き先を全部1回は確認するぜ!」になるようにテストを設定すること

似ているところ


実質的に同じです。
どちらも「すべての枝分かれの行き先を確認できたらOK!」なテスト方針です。

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


「判定条件網羅」と「分岐網羅」の違い1

ピヨ太プログラムは

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


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


「判定条件網羅」と「分岐網羅」の違い2

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

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

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


「判定条件網羅」と「分岐網羅」の違い3

ピヨ太プログラムにおける枝分かれの行き先(分岐)は

1.ケーキを食べる
2.ケーキを食べない


の2つです。


「判定条件網羅」と「分岐網羅」の違い4

すべての枝分かれの行き先(分岐)を最低1回は確認するのが判定条件網羅であり分岐網羅です。
具体的には

1.ケーキを食べる
2.ケーキを食べない


の2パターンを確認できるように条件を設定してテストを行います。


「判定条件網羅」と「分岐網羅」の違い5

違うところ


「判定条件」と「分岐」の違いです。
誰かに聞いたわけではありませんが、厳密に考えれば、用語の意味は違うと思います。


「判定条件網羅」と「分岐網羅」の違い6

先ほど

1.ケーキを食べる
2.ケーキを食べない


の2パターンを確認できるように条件を設定してテストを行うのが判定条件網羅であり分岐網羅だと説明しました。


「判定条件網羅」と「分岐網羅」の違い7

実は、この「2パターン」は2通りの解釈ができます。
それは

1.「(お腹が空いた? == Yes) or (嫌なことがあった? == Yes)」の判定結果が「そうだよ!」の流れ
2.「(お腹が空いた? == Yes) or (嫌なことがあった? == Yes)」の判定結果が「違うよ!」の流れ


の「2パターン」と

1.「ケーキを食べる」処理に入る流れ
2.「ケーキを食べない」処理に入る流れ


の「2パターン」です。

どっちと解釈しても、実際に起きることは同じですけどね。
細かく見ると

「(お腹が空いた? == Yes) or (嫌なことがあった? == Yes)」の判定結果が「そうだよ!」か「違うよ!」に枝分かれ

することにより

「ケーキを食べる」か「ケーキを食べない」に処理が枝分かれ

します。

この話における

「(お腹が空いた? == Yes) or (嫌なことがあった? == Yes)」の判定結果が「そうだよ!」か「違うよ!」に枝分かれ

に注目してテストを行うのが判定条件網羅です。


「判定条件網羅」と「分岐網羅」の違い8

もう一方の

「ケーキを食べる」か「ケーキを食べない」に処理が枝分かれ

に注目してテストを行うのが分岐網羅です。


「判定条件網羅」と「分岐網羅」の違い9

……と、私は理解しています。


個人的な使い分け


使い分けしていません。どちらも同じ意味で使っています。
ただし

1.「判定条件網羅」よりも「分岐網羅」の方がパッと見でイメージしやすい
2.「判定条件網羅」という表現はパッと見で「条件網羅」と紛らわしい


の理由から、できるだけ「分岐網羅」と表現するようには意識しています。


備考


実質的に同じなので、違いを気にしない方が幸せになれると思います。
「あー!この人、判定条件網羅っぽいのを分岐網羅って言ってるー!」とか指摘しちゃうと多分ケンカになりますよ。


スポンサーリンク