平成25年 秋期 基本情報技術者 午後 問05
問05 5問選択問5 ソフトウェアのテスト設計に関する次の記述を読んで,設問1〜3に答えよ。 システムインテグレータの N 社は,開発したプログラムに対するバグの摘出漏れの削減を 目的として,テストの方法を見直している。 〔 N 社のテスト方法に関する説明〕 N 社では主にホワイトボックス法の一つである制御フローテストで, 開発したプログラムのテストを実施している。 制御フローテストは,プログラムを構成する最小単位である命令,経路,判定条件に着目し, テスト計画時に定めたカバレッジ基準を満たすテストケース,テストデータを作成して, 開発したプログラムの動作を確認するテスト方法である。 カバレッジ基準としては,テストにおいて全ての命令文を1回は実行する命令網羅, 全ての分岐について分岐後の全ての経路を1回は実行する判定条件網羅(以下, 分岐網羅という)などがある。 N 社は,カバレッジ基準として分岐網羅を採用している。 〔 N 社が採用している分岐網羅の判定条件に関する説明〕 分岐の判定条件には,一つの条件だけを評価する単独条件と,二つ以上の単独条件を and 又は or で組み合わせて評価する複数条件がある。単独条件と複数条件の例を次に示す。
ここで,プログラムの実行時に,複数条件については短絡評価を行うものとする。 短絡評価とは,複数条件を構成する単独条件を左から右へ向かって順に評価し, 複数条件の結果が確定したら,残りの単独条件を評価しない方法である。 例えば,二つの単独条件を and で組み合わせた複数条件の場合,一つ目の単独条件を 評価した結果が偽ならば,複数条件は二つ目の単独条件に関係なく必ず儀になるので, 二つ目の単独条件を評価しない。 設問1 N 社が採用している分岐網羅の判定条件に関する次の記述中の に入れる正しい答えを,解答群の中から選べ。 図1はテスト対象のプログラムの例,表1はこのプログラムのテストケースの 例である。N 社が採用している分岐網羅の判定条件に従って,このテストケースを 用いて,図1のプログラムをテストしたとき,テストケース@では 結果となり, テストケースAでは, 結果となる。 図1 テスト対象のプログラムの例
表1 テストケースの例 イ b < 20 と c > 10 が評価されない ウ b < 20 と d > 10 が評価されない エ C > 10 が評価されない オ c > 10 と d > 10 が評価されない カ d > 10 が評価されない キ 全ての単独条件が評価される
設問2 プログラムの制御構造は,制御フローグラフで記述することができる。 制御フローグラフは,処理を逐次実行する命令,繰返し命令,分岐命令に分け, それぞれを処理ブロック(以下,ノードという)として処理の実行順に有向線分(以下, エッジという)で結んだグラフである。ここで,複数条件は,それぞれの単独条件に 分解して制御フローグラフに置き換える。 図2は,図1のテスト対象のプログラムの例にノード番号@〜Jを 付与したものであり,図3は,それに対応する制御フローグラフである。 図3のノード番号は,図2中のノード番号に対応する。図3のノード S とノード E は, それぞれプログラムの入口と出口を表す特別なノードであり,テスト対象のプログラムの 例には対応する処理はない。 図3の制御フローグラフ中の に入れる適切なノード番号を, 解答群の中から選べ。 図2 図1にノード番号を付与したプログラムの例
カ I キ J
設問3 次の記述中の に入れた正しい答えを, 解答群の中から選べ。 図1のプログラムのテストにおいて,N 社が採用している分岐網羅の場合, 最低限必要となるテストケースの数は である。 これに対して,制御フローグラフから経路を抽出してテストケースを作成する方法がある。 制御フロ―グラフの全てのエッジとノードを網羅する,最小の経路の数(S)は, 次の式で求められる。 図3の制御フローグラフから,S を求める となる。 N 社は,バグの摘出漏れの削減を目的として,制御フローグラフに基づくテストケースで プログラムのテストをすることとした。 g,h に関する解答群 カ 7
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
|