IPA過去問ドリル

令和3年度 春期 システムアーキテクト試験 午前Ⅱ 問7

テクノロジ/開発技術

あるプログラムについて,流れ図で示される部分に関するテストケースを,判定条件網羅(分岐網羅)によって設定する。この場合のテストケースの組合せとして,適切なものはどれか。ここで,( )で囲んだ部分は,一組みのテストケースを表すものとする。

令和3年度 春期 システムアーキテクト試験 午前Ⅱ 問7の図

出典:令和3年度 春期 システムアーキテクト試験 午前Ⅱ 問7

正解:ア

解説

判定条件網羅(分岐網羅)は,プログラム中の各判定(分岐)について,真(Yes)と偽(No)の両方の結果が少なくとも1回ずつ実行されるようにテストケースを設定する技法です。設問の流れ図では,判定条件は「A>6 or B=0」の一つだけであり,この判定がYesとなる場合とNoとなる場合を少なくとも1回ずつ含むテストケースの組合せを選べばよいことになります。選択肢アの(A=1,B=1)は,A>6が偽,B=0も偽なので判定全体はNo(偽)となり,(A=7,B=1)は,A>6が真なので判定全体はYes(真)となります。したがって,この組合せは判定のYesとNoの両方を満たしており,判定条件網羅を満たす適切なテストケースの組合せです。

選択肢ごとの解説

  • 正しい。(A=1,B=1)で判定は偽(No),(A=7,B=1)で判定は真(Yes)となり,判定条件網羅(分岐網羅)を満たします。
  • 誤り。(A=4,B=0)で判定は真(Yes,B=0が真のため),(A=8,B=1)でも判定は真(Yes,A>6が真のため)となり,判定が偽(No)となるケースが含まれないため,判定条件網羅を満たしません。
  • 誤り。(A=4,B=1)で判定は偽(No),(A=6,B=1)でも判定は偽(No,A>6もB=0も満たさないため)となり,判定が真(Yes)となるケースが含まれないため,判定条件網羅を満たしません。
  • 誤り。(A=7,B=1)で判定は真(Yes),(A=1,B=0)でも判定は真(Yes,B=0が真のため)となり,判定が偽(No)となるケースが含まれないため,判定条件網羅を満たしません。
システムアーキテクトの過去問を演習モードで解く