静的解析、動的テスト、デバッグ支援

更新日:

用語解説

静的解析はプログラムを実行せずに成果物を調べ、動的テストとデバッグ支援は実行時の振る舞い・状態を観測して不具合を検出・原因追跡します。

■ 試験で押さえるポイント

  • 静的解析は構文、型、制御・データフロー、規約、複雑度、未使用値、脆弱な記述等をコンパイラ、リンタ、解析器で検査します。

  • 動的テストは具体的な入力と実行環境で出力、状態、時間、資源使用等を確認し、実行した経路の欠陥を見つけます。

  • デバッガはブレークポイント、ステップ実行、変数・メモリ監視、コールスタック等で障害の原因を追跡します。

  • テストは欠陥の存在を検出し、デバッグは原因を特定して修正する活動です。静的解析と動的テストは検出できる問題が異なるため併用します。

■ 選択肢での判断ポイント

実行しない検査が静的解析、入力して動かす検査が動的テスト、原因追跡がデバッグです。デバッグはテストそのものではないと区別します。

例: リンタが到達不能コードを実行前に検出し、テストで例外を再現し、デバッガのブレークポイントで不正値が入った箇所を特定します。

音声で聞く