過去問解きまくり研究所 ホーム

令和7年度 春期 午前Ⅱ 問7

実装・構築

プログラム P をテストケースの集合であるテストセット T でテストし,テスト結果が全て想定結果と一致することを確認した。そのテストセット T に不具合を検出できる十分な能力があるかどうかを評価するために,次の手順でテストを行った。このテストを何と呼ぶか。

〔手順〕

① プログラム P のステートメントの 1 か所に,例えば(a+b>1)を(a+b>0)にするというような,軽微な変更を行ったプログラム P_1,P_2,P_3,…,P_m を作成する。この m 個のプログラムの変更内容は,全て異なっている。

② テストセット T を用いて全てのプログラム P_1,P_2,P_3,…,P_m をテストする。

③ P_1 から P_m までの m 個のプログラムのうち,プログラム P と異なるテスト結果となったプログラムの総数を N とし,次式によって,テストセット T の有効性の指標 E を算出する。

E=N/m

答えと解説を見る

✓ これが正解ウミューテーションテスト

解説

小さな変更を加えたプログラムを見抜けるかで、テストセットの能力を測ります。

ミューテーションテストは、テストセットが不具合を見つける力を評価するためのテストです。元のプログラムの一か所に、比較演算子や定数を少し変えるといった小さな変更を加えたプログラムを多数作ります。これらは、わざと不具合を埋め込んだプログラムに当たります。同じテストセットでそれぞれをテストし、元のプログラムと異なる結果になれば、その変更を検出できたことになります。設問の手順では、m 個の変更済みプログラムのうち結果が異なった数を N とし、E=N/m を求めています。この値が 1 に近いほど、テストセットは不具合を見逃しにくいと評価できます。わざと変えたものを見抜けるか、と覚えると選べます。

ほかの選択肢はなぜ違うのか

この問題の用語

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

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)