基本情報技術者試験過去問 - 分野別(科目A) - 実装・構築

令和8年7月修了 問37
図はプログラムの流れ図の一部である。判定条件網羅分岐網羅)によるテストの説明はどれか。

全ての分岐を1回以上通過させる。
全ての命令文を1回以上実行させる。
判断における全ての条件式がそれぞれ真になる場合と偽になる場合とを1回以上判定させ,かつ,判断における全ての分岐を1回以上通過させる。
判断における全ての条件式がそれぞれ真になる場合と偽になる場合とを1回以上判定させる。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
解説
判定条件網羅」(分岐網羅)は,プログラムのテスト手法の一つで,プログラム中に存在する全ての分岐(if文などの判断による枝分かれ)を,少なくとも1回は通過するようにテストケースを設計する方法です。選択肢「ア」がこれに該当します。

似たテスト手法として,選択肢「エ」で説明されている「条件網羅」があり,こちらは判断の中に含まれる個々の条件式それぞれについて,真になる場合と偽になる場合を少なくとも1回ずつ発生させることを重視する手法です。また,選択肢「イ」は「命令網羅」の説明です。網羅基準にはこの他にも「複数条件網羅」などがあり,それぞれ検証の厳密さの度合いが異なるため,用語の違いと網羅の強さの順序を整理しておきましょう。
令和7年6月修了 問37
プログラムの流れ図で示される部分に関するテストデータを,判定条件網羅decision coverage)によって設定した。このテストデータ複数条件網羅(multiple condition coverage)による設定に変更するとき,加えるべきテストデータのうち,適切なものはどれか。ここで,()で囲んだ部分は,一組みのテストデータを表すものとする。


判定条件網羅によるテストデータ
 (A=4,B=1),(A=5,B=0)
(A=3,B=0),(A=7,B=2)
(A=3,B=2),(A=8,B=0)
(A=4,B=0),(A=8,B=0)
(A=7,B=0),(A=8,B=2)
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔令3修1問48〕〔令1修7問48〕〔平30春問49〕〔平25修12問50〕〔平23修7問51
解説
判定条件網羅では「A>6 or B=0」という条件式全体の真偽の両方を満たすようなテストデータを用意すればよく,問題文の例では(A=4,B=1)で条件が偽,(A=5,B=0)で条件が真となるように設定されています。これに対して複数条件網羅では,条件式を構成する個々の条件(A>6とB=0)のすべての組合せ,すなわち真偽の4通りの組合せを網羅する必要があります。

既存の2組のデータでは網羅できていない組合せを補うために,A>6 が真で B=0 も真となる組合せと,A>6 が偽で B=0 も偽となる組合せを追加する必要があり,これに合致するのが(A=7,B=0)と(A=8,B=2)の組合せです。正解は「エ」です。他の選択肢は,条件の真偽の組合せとして既存のデータと重複していたり,必要な組合せを網羅できていなかったりするため不適切です。
令和6年12月修了 問37
ブラックボックステストにおけるテストケースの設計方法として,適切なものはどれか。
プログラム仕様書の作成又はコーディングが終了した段階で,仕様書やソースリストを参照して,テストケースを設計する。
プログラムの機能仕様やインタフェースの仕様に基づいて,テストケースを設計する。
プログラムの処理手順や内部構造に基づいて,テストケースを設計する。
プログラムの全ての条件判定で,真と偽をそれぞれ1回以上実行させることを基準に,テストケースを設計する。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
解説
ブラックボックステスト」とは,プログラムの内部の処理の流れや構造には注目せず,外から見て「どのような入力に対して,どのような出力が返ってくるべきか」という仕様に基づいてテストを行う方法です。

テストケース(具体的にどんな入力を使って確認するかという計画)を設計する際には,プログラムの機能仕様や,外部とのやり取りの方法を定めたインタフェースの仕様に基づいて設計します。正解は「イ」です。

「ア」は,仕様書の作成やコーディングが終わった後に,仕様書ソースコード自体を参照してテストケースを作るという流れの説明ですが,ブラックボックステストの本質は内部構造を見ずに仕様だけをもとにする点にあり,この説明はやや不正確です。

「ウ」は,プログラムの処理手順や内部構造に基づいてテストケースを作る,まさにホワイトボックステストの考え方の説明です。

「エ」は,すべての条件判定において真(成立する場合)と偽(成立しない場合)の両方を少なくとも1回は実行するようにテストケースを設計する「条件網羅」と呼ばれる基準についての説明であり,こちらも内部の条件分岐構造に着目するホワイトボックステストの考え方に近いものです。
令和6年7月修了 問37
ソフトウェアのテストツールの説明のうち,静的テストを支援する静的解析ツールのものはどれか。
指定された条件のテストデータや,プログラムの入力ファイルを自動的に生成する。
テストの実行結果を基に,命令の網羅率や分岐の網羅率を自動的に計測し,分析する。
プログラム中に文法上の誤りや論理的な誤りなどがあるかどうかを,ソースコードを分析して調べる。
モジュール呼出し回数や実行時間,実行文の実行回数などの,プログラム実行時の動作特性に関するデータを計測する。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔令4修6問46〕〔令2修7問47〕〔平31春問48
解説
静的解析ツール」とは,プログラムを実際に実行することなく,ソースコードそのものを分析して,文法上の誤りや論理的な誤りなどを検出するためのツールのことです。プログラムを動かさずに調べるという点が,静的テストの大きな特徴です。実行せずにソースコードを分析するという点から,「ウ」が正解です。

「ア」は指定した条件に基づいてテストデータや入力ファイルを自動的に生成するツールについての説明で,テストデータ生成ツールにあたります。

「イ」はテストの実行結果を基にして命令や分岐の網羅率を計測し分析するツールについての説明で,カバレッジ分析ツールと呼ばれる,動的テストを支援するツールにあたります。

「エ」はモジュール呼出し回数や実行時間などプログラム実行時の動作特性を計測するツールについての説明で,これも実際にプログラムを動かして得られる情報を扱う動的解析ツールにあたります。
令和6年6月修了 問41
テスト工程での品質状況を評価するためには,テスト項目消化件数と累積バグ件数との関係を分析する必要がある。一定の品質が達成されつつあることを表しているグラフはどれか。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平30修12問54〕〔平29春問53〕〔平26修7問54
解説
テスト工程における品質状況の分析では,テスト項目消化件数(横軸)と累積バグ件数(縦軸)の関係をグラフにして評価します。

テストが進むにつれてバグの発見数が徐々に減少し,グラフの傾きが緩やかになって最終的に横ばいに近づく形(S字型のカーブ)は,テストによってバグがほぼ出尽くし,一定の品質水準に達しつつあることを示しています。この形に該当するのは「エ」のグラフであす。

「ア」(右肩上がりに増加が加速する形)はバグが収束していないことを示し,「イ」(右肩下がりの形)は通常あり得ない不自然な形であり,「ウ」(直線的に増加し続ける形)はバグの発見ペースが一定で品質が安定していないことを示します。バグ収束曲線の読み取り方を理解しておくことが大切な問題です。
令和5年1月修了 問47
バグ埋込み法によってソフトウェア内に残存するバグを推定する。テストによって現在までに発見されたバグは48個であり,総埋込みバグ22個のうち,テストによって発見されたものは16個であった。あと幾つのバグが潜在していると推定されるか。ここで,埋込みバグの発見数とソフトウェアのバグの発見数は比例するものとする。
6
10
18
22
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平23修1問48
解説
バグ埋込み法」は,ソフトウェアに意図的に既知のバグ(テスト用のバグ)を埋め込み,そのうちどれだけがテストで発見されたかという割合を使って,実際に潜んでいる未知のバグの総数を推定する手法です。この手法は,埋め込みバグの発見率と,実際のソフトウェアのバグの発見率が等しいという仮定に基づいています。

問題文では,総埋込みバグ22個のうち16個が発見されたとあるので,埋込みバグの発見率は16を22で割った値になります。この発見率が,実際のソフトウェアのバグの発見率とも等しいと仮定すると,テストで発見された実際のバグ48個が,全体のバグ数のうちこの発見率に相当する部分であると考えられます。

つまり,全体のバグ数をxとすると,48をxで割った値が16を22で割った値と等しくなるという式が成り立ちます。この式を解くと,xは48に22を掛けて16で割った値,すなわち66になります。従って,まだ発見されていない残りのバグの数は,全体の66個から既に発見された48個を引いた18個となり,選択肢「ウ」が正解です。
令和5年1月修了 問48
図に示すテスト工程品質管理図の解釈と今後の対応のうち,適切なものはどれか。

作り込み品質が悪いと判断できるので,誤り多発箇所の重点対策が必要である。前工程の品質状況を見直し,必要であれば前工程をやり直す。
テスト項目の消化が遅く,今のうちにテスト環境の不備や開発要員の不足について,対策を検討しておくべきである。品質については,予測した以上に誤りを検出しており,問題はない。
テスト項目の消化が速く,予測した以上に誤りの検出が進んでいる。テストの前半でもあるので,このままテストを継続して様子を見るのがよい。
テスト項目の消化度合いに比べて誤りの検出が進んでおり,テストが効率的に進行中である。現時点で注意することはないが,未解決な誤りを長期間抱え込まないように,誤りへの対処の進捗管理が必要である。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平24修6問52〕〔平22修1問50
解説
この問題で示されているテスト工程品質管理図は,横軸に日数,縦軸に未消化のテスト項目数と累積の誤り検出数をとったグラフです。

グラフを見ると,テストの初期段階からすでに誤りの検出数が急激に増加しており,累積誤り検出数の実際の推移が予測を上回るペースで進んでいることが読み取れます。これは,テストで多くの誤りが次々と見つかっているということを意味し,開発の前工程,つまり設計や実装の段階での品質,いわゆる作り込み品質に問題があった可能性が高いと考えられます。

選択肢「ア」にある通り,このような状況では,誤りが多発している箇所を重点的に対策するとともに,前工程の品質状況を見直し,必要であれば前工程の作業をやり直すことが適切な対応です。

「イ」は,テスト項目の消化が遅いことを問題視していますが,グラフからはテスト項目の消化が特に遅れているとは読み取れず,また誤り検出数が多いこと自体を問題視していない点も不適切です。

「ウ」は,このままテストを継続して様子を見るのがよいとしていますが,誤りが多発している状況を放置することは望ましくありません。

「エ」は,現時点で注意することはないとしていますが,誤りの検出数が予測を大きく上回っている状況を軽視しており不適切です。
令和4年6月修了 問47
プログラム中の図の部分を判定条件網羅分岐網羅)でテストするときのテストケースとして,適切なものはどれか。

AB
AB
AB
AB
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔令2修12問47〕〔平29修7問48〕〔平27秋問47〕〔平26修7問48〕〔平24修12問48
令和4年6月修了 問48
エラー埋込み法による残存エラーの予測において,テストが十分に進んでいると仮定する。当初の埋込みエラーは48個である。テスト期間中に発見されたエラーの内訳は,埋込みエラーが36個,真のエラーが42個である。このとき,残存する真のエラーは何個と推定されるか。
6
14
54
56
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
令和4年1月修了 問47
流れ図において,分岐網羅を満たし,かつ,条件網羅を満たすテストデータの組みはどれか。


テストデータ
xy
22
12
12
00
12
11
01
12
01
02
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
令和3年6月修了 問46
ホワイトボックステストの説明として,適切なものはどれか。
外部仕様に基づいてテストデータを作成する。
同値分割の技法を使用してテストデータを作成する。
内部構造に基づいてテストデータを作成する。
入力と出力の関係からテストデータを作成する。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平23春問49
令和3年6月修了 問48
単一の入り口をもち,入力項目を用いた複数の判断を含むプログラムテストケースを設計する。命令網羅判定条件網羅の関係のうち,適切なものはどれか。
判定条件網羅を満足しても,命令網羅を満足しない場合がある。
判定条件網羅を満足するならば,命令網羅も満足する。
命令網羅を満足しなくても,判定条件網羅を満足する場合がある。
命令網羅を満足するならば,判定条件網羅も満足する。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔令1秋問49
令和2年6月修了 問46
ブラックボックステストに関する記述として,最も適切なものはどれか。
テストデータの作成基準として,プログラムの命令や分岐に対する網羅率を使用する。
被テストプログラムに冗長なコードがあっても検出できない。
プログラムの内部構造に着目し,必要な部分が実行されたかどうかを検証する。
分岐命令モジュールの数が増えると,テストデータが急増する。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平31春問47〕〔平29秋問49〕〔平26秋問48〕〔平24秋問48〕〔平22修6問51
令和2年6月修了 問47
図は,テスト項目消化件数Xにおいて,目標値として設定したバグ累積件数に到達したことを示す。この図の状況の説明として,適切なものはどれか。

テスト工程が順調に終了したことを示す。
テスト前段階での机上チェックやシミュレーションが十分にされていることを示す。
まだ多くのバグが内在している可能性があることを示す。
目標のバグ累積件数が達成されたので,出荷後にバグが発生する確率が低いことを示す。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平31修1問48〕〔平29修6問49〕〔平27春問49
令和1年秋期 問47
エラー埋込法において,埋め込まれたエラー数をS,埋め込まれたエラーのうち発見されたエラー数をm,埋め込まれたエラーを含まないテスト開始前の潜在エラ一数をT,発見された総エラー数をnとしたとき,S,T,m,nの関係を表す式はどれか。
mS=n-mT
mS=Tn-m
mS=nT
mS=Tn
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成30年春期 問48
ブラックボックステストテストデータの作成方法のうち,最も適切なものはどれか。
稼働中のシステムから実データを無作為に抽出し,テストデータを作成する。
機能仕様から同値クラスや限界値を識別し,テストデータを作成する。
業務で発生するデータの発生頻度を分析し,テストデータを作成する。
プログラムの流れ図を基に,分岐条件に基づいたテストデータを作成する。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成29年春期 問49
流れ図において,判定条件網羅分岐網羅)を満たす最少のテストケース数は幾つか。

1
2
3
4
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成29年1月修了 問49
プログラム実行中の特定の時点で成立する変数間の関係や条件を記述した論理式を埋め込んで,そのプログラムの正当性を検証する手法はどれか。
アサーションチェック
コード追跡
スナップショットダンプ
テストカバレッジ分析
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平25秋問49
平成28年秋期 問48
整数1~1,000を有効とする入力値が,1~100の場合は処理Aを,101~1,000の場合は処理Bを実行する入力処理モジュールを,同値分割法境界値分析によってテストする。次の条件でテストするとき,テストデータの最小個数は幾つか。

〔条件〕
① 有効同値クラスの1クラスにつき,一つの値をテストデータとする。ただし,テストする値は境界値でないものとする。
② 有効同値クラス,無効同値クラスの全ての境界値をテストデータとする。
5
6
7
8
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成28年7月修了 問50
ホワイトボックステストの説明として,適切なものはどれか。
下位のモジュールから上位のモジュールへと,順次結合してテストする。
上位のモジュールから下位のモジュールへと,順次結合してテストする。
モジュールの内部構造に注目して,テストする。
モジュールの内部構造を考慮することなく,仕様書どおりに機能するかどうかをテストする。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平26修12問48〕〔平25修7問50〕〔平23修1問49
平成28年春期 問49
流れ図で表される部分を命令網羅によってテストするとき,テストケースは少なくとも幾つ用意する必要があるか。
2
3
4
5
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成28年1月修了 問54
テスト工程での品質状況を判断するための管理項目として,テスト項目消化件数と累積バグ件数との関係がある。品質が安定しつつあることを表しているグラフはどれか。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平25修1問56〕〔平23修1問56〕〔平21修6問53
平成27年春期 問50
図の構造をもつプログラムに対して,ホワイトボックステストテストケースを設計するとき,少なくとも実施しなければならないテストケース数が最大になるテスト技法はどれか。

条件網羅
判定条件網羅
複数条件網羅
命令網羅
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成27年1月修了 問48
モジュールの内部構造を考慮することなく,仕様書どおりに機能するかどうかをテストする手法はどれか。
トップダウンテスト
ブラックボックステスト
ボトムアップテスト
ホワイトボックステスト
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平23秋問47
平成26年6月修了 問48
次の流れ図において,判定条件網羅分岐網羅)を満たす最少のテストケースはどれか。

(1)A=0,B=0 (2)A=1,B=1
(1)A=1,B=0 (2)A=1,B=1
(1)A=0,B=0 (2)A=1,B=1 (3)A=1,B=0
(1)A=0,B=0 (2)A=0,B=1 (3)A=1,B=0
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平24修7問52〕〔平21修7問48
平成22年12月修了 問50
ソフトウェアのテスト工程において,バグ管理図を用いて,テストの進捗状況とソフトウェアの品質を判断したい。このときの考え方のうち,最も適切なものはどれか。
テスト工程の前半で予想以上にバグが検出され,スケジュールが遅れたので,スケジュールの見直しを行い,数日遅れでテスト終了の判断をした。
テスト項目がスケジュールどおりに消化されていれば,バグ摘出の累積件数が増加しなくても,ソフトウェアの品質は高いと判断できる。
テスト項目消化の累積件数,バグ摘出の累積件数及び未解決バグの件数の推移がすべて横ばいになった場合は,解決困難なバグに直面しているかどうかを確認する必要がある。
バグ摘出の累積件数の推移とテスト項目の未消化件数の推移から,テスト終了の時期をほぼ正確に予測できる。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
同一問題 : 〔平21春問48
平成21年7月修了 問47
プログラムの誤りの一つに,繰返し処理の判定条件として A≧a とすべきところ A>a とコーディングすることがある。このような誤りを見つけ出すために有効なテストケース設計技法はどれか。ここで,Aは変数,aは定数とする。
限界値分析
条件網羅
同値分割
分岐網羅
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成21年6月修了 問47
プログラムのテストに関する記述のうち,適切なものはどれか。
内部構造のテストにはブラックボックステストを用い,外部仕様のテストにはホワイトボックステストを用いる。
プログラムに残っているエラーの個数は,既に見つかったエラーの個数とは無関係である。
プログラム完全性を証明することがテストの目的であり,エラーはすべて検出できるという仮説の下にテスト計画を立てるべきである。
プログラムのテストでは,正常なケースで正しく動作するかどうかだけではなく,誤った入力があった場合にも意図した動作をするかどうかを調べる必要がある。
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
平成21年6月修了 問48
ホワイトボックステスト法によってプログラムをテストする。テストの網羅性の低いものから順に並べたものはどれか。

条件A プログラム中のすべての経路が,少なくとも一回は実行される。
条件B プログラム中のすべての実行文が,少なくとも一回は実行される。
条件C プログラム中のすべての分岐点におけるそれぞれの分岐方向が,少なくとも一回は実行される。
A,B,C
A,C,B
B,A,C
B,C,A
答え
分野 : テクノロジ系 › 開発技術 › システム開発技術 › 実装・構築
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる