SkillStack
テクノロジ系7 / 25問

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

プログラムPをテストケースの集合であるテストセットTでテストし、テスト結果が全て想定結果と一致することを確認した。そのテストセットTに不具合を検出できる十分な能力があるかどうかを評価するために、次の手順でテストを行った。このテストを何と呼ぶか。 〔手順〕 ① プログラムPのステートメントの1か所に、例えば(a+b>1)を(a+b>0)にするというような、軽微な変更を行ったプログラムP₁、P₂、P₃、…、Pₘを作成する。このm個のプログラムの変更内容は、全て異なっている。 ② テストセットTを用いて全てのプログラムP₁、P₂、P₃、…、Pₘをテストする。 ③ P₁からPₘまでのm個のプログラムのうち、プログラムPと異なるテスト結果となったプログラムの総数をNとし、次式によって、テストセットTの有効性の指標Eを算出する。 E=N/m

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】ウ

ミューテーションテストは、元のプログラムに演算子や条件式などの小さな変更を意図的に加えた「ミュータント」を多数作成し、既存のテストセットがその変更を検出できるかを調べる手法です。変更後のプログラムが元のプログラムと異なる結果になれば、そのミュータントはテストによって「殺された」と考えます。設問のE=N/mは、全ミュータント数mのうち検出できた数Nの割合であり、一般にミューテーションスコアと呼ばれます。したがって、ウが正解です。

アの探索的テストは誤りです。これは、事前に詳細なテストケースを固定せず、テスト担当者が対象への理解を深めながら、テスト設計と実行を並行して進める手法です。

イのドメイン分析テストは誤りです。これは、入力値の範囲を同じ振る舞いが期待される領域に分け、領域の内部や境界を重点的に確認する手法です。

エのユースケーステストは誤りです。これは、利用者とシステムとのやり取りを表したユースケースに基づき、業務シナリオが正しく実現されるかを確認する手法です。

【ポイント】 ミューテーションテストは、プログラムそのものではなく、テストケースの欠陥検出能力を評価します。 ミューテーションスコアが高いほど、意図的に埋め込んだ変更を多く検出できたことを示します。

出典:令和7年度 春期 システムアーキテクト試験 午前II 問7
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の25問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める