テストの目的は、システムやプログラムに潜むエラーを検出することです。テストは、単体テスト、統合テスト(結合テスト)、システムテスト、運用テストの順で部分から全体へ向けて行います。
1:単体テスト
モジュール単体が正しく動作するかをテストします。アルゴリズムやデータ構造について詳細にチェックします。プログラミング工程での誤りの発見を行います。
2:統合テスト(結合テスト)
モジュールを組み合わせて動作させたときに正しく動作するかをテストします。モジュール間でやり取りするデータの整合性、すなわち、モジュール間インターフェースの生合成について詳細にチェックします。統合テスト(結合テスト)には、下記の技法があります。
①トップダウンテスト:上位モジュールから順にテストを行う。仮の下位モジュール(スタブ)を用いる。
②ボトムアップテスト:下位モジュールから順にテストを行う。仮の上位モジュール(ドライバ)を用いる。
③サンドイッチテスト:トップダウンテストとボトムアップテスを同時に行う。
④ビッグバンテスト:単体テストを終えたモジュールを一度に結合する。
⑤一斉テスト:単体テストを省略して、モジュールを一度に結合する。