ミューテーションテストとは?みゅーてーしょんてすと
ミューテーションテストとは、プログラムに意図的な小さい書き換え(ミュータント)を加え、既存のテストがその書き換えを検出して失敗するかを調べることで、テストケース側の質を測る手法。書き換えても通り続けたミュータントは、そこを守るテストが存在しないことを示している。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →背景
網羅率は、どの行や分岐を通ったかを数えているだけで、通った結果が正しいかを確かめたかまでは見ていない。判定結果を検証していないテストでも、数字の上では100%に届いてしまう。実際に壊してみて気づけるかを試せば、テストが検出できる範囲そのものを測れる。品質を測る対象を、作られた物から、それを確かめる仕掛けの側へ移した点が要点になる。
具体例
比較演算子を < から <= へ変えた版でテストが依然として全部成功するなら、そのテストは境界の値を確かめていないと分かる。Java 向けの PIT(pitest)のような道具が、書き換えの生成と実行を自動で回し、検出できた割合を出す。
試験での引っ掛け
測っているのは製品コードの品質ではなくテストの品質である。ここでの検出率が高くても、仕様そのものの抜けは見つからない。また書き換えても振る舞いが変わらない等価ミュータントは原理的に検出できず、検出率が100%に届かない原因になる。
関連用語
出典・参考
公式シラバスの4 開発技術 > 3. 実装・構築 > (8) ソフトウェアユニットのテストに掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。