統合テスト

統合テスト (英: integration testing)は、個々のソフトウェアモジュールを組み合わせて集合体としてテストするソフトウェアテストのフェーズである。統合試験とも呼ばれる。統合テストは、システムやコンポーネントの指定された機能要件への準拠を評価するために実施される。 単体テストの後、検証テストの前に行われる。統合テストは、単体テストされた入力モジュールを受け取り、それらをより大きな集合体にグループ化し、統合テスト計画で定義されたテストをそれらの集合体に適用し、システムテストの準備ができた統合システムを出力として提供する。 
アプローチ.
統合テストには、ビッグバン、混合（サンドイッチ）、高リスク順、トップダウンとボトムアップなどがある。その他の統合パターンは、コラボレーション統合、バックボーン統合、レイヤー統合、クライアント/サーバー統合、分散サービス統合、および高周波統合がある。
ビッグバンアプローチでは、開発されたモジュールのほとんどが結合されて完全なソフトウェアシステムまたはシステムの主要部分を形成し、統合テストを行う。この方法は、統合テストプロセスの時間を節約するのに非常に効果的である。ただし、テストケースとその結果が適切に記録されていない場合、統合プロセス全体がより複雑になり、テストチームが統合テストの目標を達成できなくなる可能性がある。
ボトムアップテストは、統合テストのアプローチのひとつであり、階層が最も低いレベルのコンポーネントからテストされ、次第に高いレベルのコンポーネントのテストを行っていく。このプロセスは、階層の最上位にあるコンポーネントがテストされるまで繰り返される。低いレベルのモジュールでは関数やプロシージャが統合されテストされる。下位レベルの統合モジュールの統合テストの後、より高い次のレベルのモジュールが形成され、統合テストが行われる。このアプローチは、同じ開発レベルのすべてまたはほとんどのモジュールの準備ができている場合にのみ使える。この方法は、開発されたソフトウェアのレベルを判断するのにも役立ち、テストの進行状況をパーセンテージで簡単に報告することができる。
トップダウンテストは、統合テストのアプローチのひとつであり、最上位の統合モジュールが最初にテストされ、モジュールの部分が関連モジュールの最後まで段階的にテストされる。
サンドイッチテストは、トップダウンテストとボトムアップテストを組み合わせるアプローチである。
この種のテストの制限の1つは、設計項目の実行の確認以外に、指定された統合テストに記載されていない条件は通常テストされないということである。