平成31年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問23
テクノロジ/開発技術ソフトウェアのテスト手法のうち,ファジングはどれか。
出典:平成31年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問23
- アテスト対象に問題を引き起こす可能性があるデータを大量に送り込み,その応答や挙動を監視することによって脆弱性を検出する。
- イテスト対象の振る舞いを状態遷移表で整理し,発生し得る遷移をテストする。
- ウ同値分割で得られた,同値クラスの境界となる値,及びその前後の値を明らかにして,それらをテストデータとする。
- エプログラムの処理経路を網羅するようにテストを実施し,正しく動作することを検証する。
正解:ア
解説
ファジング(ファズテスト)は,テスト対象に対して問題を引き起こす可能性のある不正・異常なデータ(ファズ)を大量かつ機械的に送り込み,そのときの応答や挙動(クラッシュや異常終了,予期しない状態変化など)を監視することによって,想定していなかった脆弱性やバグを発見するテスト手法です。仕様や設計からは予測しにくい,境界値や例外的な入力に対する耐性を確認するのに有効です。
選択肢ごとの解説
- ア正しい。テスト対象に問題を引き起こす可能性があるデータを大量に送り込み,その応答や挙動を監視することによって脆弱性を検出する手法がファジングです。
- イ誤り。テスト対象の振る舞いを状態遷移表で整理し,発生し得る遷移をテストする手法は,状態遷移テストの説明です。
- ウ誤り。同値分割で得られた同値クラスの境界値とその前後の値をテストデータとする手法は,限界値分析(境界値分析)の説明です。
- エ誤り。プログラムの処理経路を網羅するようにテストする手法は,パスカバレッジ(経路網羅)に基づくホワイトボックステストの説明です。