- このトピックは空です。
-
投稿者投稿
-
-
nobody
ゲストp.468以降で各テストの解説があります。
●判定条件網羅について
判定条件「真」と「偽」をテストする必要があるので、
「真・真」「真・偽」で、テストケースは2つと解説されていますが、
「真・真」「偽・偽」でも、いいのでしょうか?●条件網羅について
A条件とB条件の各条件で「真」と「偽」をテストする必要があるので、
「真・偽」「偽・真」で、テストケースは2つと解説されていますが、
「真・真」「偽・偽」でも、いいのでしょうか?上記の「判定条件網羅」と「条件網羅」について、
「真・真」「偽・偽」とした場合でも、テストケースは2つであるため、
私は、これでもいいのでは?と思っていたのですが…問題は次です…●判定条件/条件網羅について
判定条件も条件も「真」と「偽」をテストする必要があるので、
「真・偽」「偽・真」「真・真」で、テストケースは3つと解説されています。
しかし、上記同様「真・真」「偽・偽」の場合、
判定条件も条件も「真」と「偽」をテストできているように思えます。
この場合のテストケースは3つではなく、2つとなります。「真・真」「偽・偽」で考えては、駄目な理由を教えてください。
-
nobody
ゲスト> ●判定条件網羅について
> 「真・真」「偽・偽」でも、いいのでしょうか?大丈夫です。
p.468の図で、①は「真・真」しかないですが、
AとBのどちらかが偽だと②になるので、②は「真・偽」「偽・真」「偽・偽」のどれでもOKです。> ●条件網羅について
> 「真・真」「偽・偽」でも、いいのでしょうか?大丈夫です。
Aに対して真と偽、Bに対して真と偽がテストできれば、組み合わせは問いません。> ●判定条件/条件網羅について
> 「真・真」「偽・偽」で考えては、駄目な理由を教えてください。-
nobody
ゲストすみません。途中で送信してしまいました。
> ●判定条件/条件網羅について
> 「真・真」「偽・偽」で考えては、駄目な理由を教えてください。Aが真のとき、Bが真なら「真」、Bが偽なら「偽」と結果が異なるので、
「真・真」「真・偽」の両方が必要(2つ)Aが偽のとき、Bが真でも偽でも結果は「偽」となるので、
「偽・真」「偽・偽」のどちらかが必要(1つ)あわせて3つ必要です。
「真・真」「偽・偽」だけだと、A(条件)が真で結果(判定条件)が「偽」であるケースがテストできていないため、判定条件/条件が網羅できていないということになります。
-
-
nobody
ゲストご丁寧にありがとうございます。
やはり「判定条件/条件」網羅が、よく分かっておりません…
条件網羅の最後の解説には、
判定条件が偽の場合しかテストできていないから、「判定条件/条件」網羅を使うとあります。
「真・真」「偽・偽」の場合、
「真・真」➡「真」
「偽・偽」➡「偽」
となるため、判定条件も「真」と「偽」の両方テストできているのでは?という疑問があります。ご説明のとおり、順序立てて考えれば納得なのですが…
先ずは、A(真)の場合を考えると、
A(真)・B(真)の場合 … ①
A(真)・B(偽)の場合 … ②
単純に【Bの条件網羅】クリア
条件も「真」と「偽」の両方テストできてるから【判定条件網羅】もクリア
残るは【Aの条件網羅】だから
A(偽)・B(何でもいい)… ③
以上の計3つのテストケースで「判定条件網羅」&「条件網羅」クリア
順序立てて考えれば納得できますが…
順序立てて考えずに、単純に…
A(真)・B(真)の場合と
A(偽)・B(偽)の場合は?で考えてみると…
AもBも(真)と(偽)になってるから【条件網羅】クリア
判定条件も(真)と(偽)になってるから【判定条件網羅】もクリアできてる!?
と、混乱している状況です。 -
nobody
ゲスト判定条件/条件網羅は、順序立てて考えるしかないです。
擬似言語っぽいプログラムにすると、こんな感じになります。(①②③はp.469の番号)if Aが真
if Bが真
「真」を出力 …③
else
「偽」を出力 …①
endif
else
「偽」を出力 …②
endifこの全ケースをテストするのが判定条件/条件網羅です。
p.469の流れ図ではAが偽のときにもBの判定が入っていますが、Bの判定を入れなくても「偽」という結果はわかっているので、テストケースはBが真でも偽でもかまいません。逆に、Aが真のときにはBの判定を入れないと、結果が「真」か「偽」かわからないので、「真・真」「真・偽」の組み合わせは必須です。
-
nobody
ゲストp.469の流れ図がわかりにくいかもしれないですね。
Aが偽のときは、Bの判定なしで、そのまま「→→偽」となっている図を考えてみてください。
それで、判定条件網羅はすべての分岐をテストしないといけないので、3ケースです。
-
-
nobody
ゲスト詳しくありがとうございます。
なるほど、順序立てながらテストケースを考えていくのですね。
なんとなく理解できたように思えます!
擬似言語アルゴリズムも苦手で、科目Bに恐々としています…
ありがとうございました。
-
-
投稿者投稿