平成27年度 III-17

科目: 専門科目 / 分野: 情報工学部門 / 年度: 平成27年度

III-17 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

流れ図(A>0かつB==0の判定、B>0またはN==1の判定)に対して、分岐網羅(C1カバレッジ)が100%になるテストケースの組合せを選ぶ問題。

解説

この問題で問われていること

分岐網羅(すべての判定が、真と偽の両方を、少なくとも1回ずつ通る)を満たすテストケースの組合せを選ぶ問題。

解き方

① 分岐網羅: すべての判定で「真」と「偽」の両方を1回ずつ通すテストケースの組を選ぶ
② (A=0, B=1): 判定1は偽、N=1で判定2は真。(A=2, B=0): 判定1は真、N=2・B=0で判定2は偽
③ ④

正解が正しい理由

判定は2つある。判定1「A>0かつB==0」と、判定2「B>0またはN==1」で、それぞれ、真・偽の両方を通す必要がある。(A=0,B=1)では、判定1は偽(A>0が偽)で、N=B=1。判定2は、B>0が真で、真。(A=2,B=0)では、判定1は真(A>0かつB==0)で、N=A=2。判定2は、B>0が偽、N==1も偽なので、偽で、N=N×2を実行。したがって、2つのテストケースで、判定1の真・偽、判定2の真・偽が、すべて通り、分岐網羅が100%になる。④が正しい。

この問題で必要な基礎

■ 分岐網羅(C1カバレッジ)とは
流れ図の中の全ての判定(ひし形)について、「真」に進む場合と「偽」に進む場合を、それぞれ少なくとも1回ずつ通るようにテストすることです。この流れ図には判定が2つあるので、2つの判定それぞれで真と偽の両方が出るテストケースの組を選びます。

■ 2つ目の判定の注意点
2つ目の判定「B>0 または N==1」のNは、1つ目の判定の後で代入された値(真ならN=A、偽ならN=B)です。テストケースごとに、まずNの値を求めてから2つ目の判定を調べます。

各選択肢について

覚えるべきポイント

分岐網羅(C1)は、各判定の真と偽を、少なくとも1回ずつ実行すること。複合条件の個々の条件までは求めない(条件網羅は、C2)。

キーワード: 分岐網羅、C1カバレッジ、テストケース、判定条件、ホワイトボックステスト、流れ図、情報工学部門