メインコンテンツへ
開発技術ソフトウェア開発

ソフトウェアテストの同値分割と境界値分析に関する問題である。 入力仕様:1以上99以下の整数を受け付け、それ以外はエラーとする。 境界値分析で選ぶべきテスト値として、適切なものはどれか。

ア.0、1、50、99、100正解
イ.1、50、99
ウ.0、50、100
エ.-1、0、1、99、100、101

解説

境界値分析は「ドアの蝶番をきつく試す」テスト。「1以上99以下」なら、境界のすぐ内側(1、99)・ちょうど境界(1、99)・境界の外側(0、100)を重点的にテストします。バグはたいてい「ぎりぎりの場所」に潜んでいます。

なぜ ア が正解か

境界値分析では、有効範囲の境界値とその内側・外側をテストします。この問題では有効範囲が1〜99なので、境界の直外(0、100)・境界値そのもの(1、99)・中間値(50)をテストするのが標準的です。選択肢アの「0、1、50、99、100」がこれを満たします。0と100は無効値(エラーケース)、1と99は有効値の境界、50は中間の代表値です。

なぜ イ は間違いか

1、50、99は有効値の同値分割(各クラスの代表値)としては適切ですが、境界値分析には無効値の境界(0と100)が含まれていません。境界値分析の最大のポイントは「無効な境界」でもテストすることです。

なぜ ウ は間違いか

0、50、100は有効範囲外の境界(0、100)と中間値だけで、有効値の境界(1、99)が含まれていません。境界値分析では有効範囲内の境界もテストする必要があります。

なぜ エ は間違いか

-1、0、1、99、100、101という選択は過剰で、-1や101は0や100と同じ無効値クラスの代表であり、追加テストによる新たな発見が期待できません。FE試験の文脈では標準的な境界値分析の範囲を超えた冗長なケースです。

出典: AI生成問題(学習用)