統合テスト(integration Testing)

統合したコンポーネントやシステムのインターフェースや相互作用の欠陥を摘出するためのテスト。

Present in sylabi

使用例

アプリケーションのログインモジュールと注文モジュールが個別にテストされた後、統合テストはそれらの相互作用を検証します。ユーザーがログインして注文し、注文モジュールが認証済みユーザーの識別情報を正しく受け取ること、といった内容です。テストデータと期待結果は、API契約、データベース接続、共有データ形式などのインターフェースをカバーします。目的は、インターフェースと、統合されたコンポーネントやシステム間の相互作用における欠陥を明らかにすることです。

よくある質問

統合テストとシステムテストの違いは何ですか? 統合テストは、統合されたコンポーネントやシステム間のインターフェースと相互作用に焦点を当てます。システムテストは、完全に統合されたシステム全体を要件に対してテストします。最初に統合テストが行われ、すべてが統合された後にシステムテストが続きます。

トップダウン方式やボトムアップ方式とは何ですか? これらは統合戦略です。トップダウン方式は上位レベルのモジュールから始めて、下位モジュールにはスタブを使用します。ボトムアップ方式は下位モジュールから始めてドライバを使用します。どちらも、インターフェースの欠陥を段階的に明らかにすることを目指します。

統合テストには本物のインターフェースが必要ですか? 理想的には必要ですが、本物のモジュールがまだ利用できない場合はスタブとドライバが使用されます。リスクは、代替物に隠された欠陥がシステムテストまで表面化しないことです。

インターフェースの欠陥はなぜ頻繁に発生するのですか? コンポーネントは並行して開発されることが多く、データ形式、エラー処理、タイミングに関する想定が正確に文書化されることは稀だからです。統合テストはそうした想定を可視化します。

関連用語

  • system testing — 統合された完全なシステムをテストすること
  • component testing — 統合前に個々のコンポーネントをテストすること
  • regression testing — 統合後に変更されていない動作を再検証すること
  • test level — 統合テストが属するライフサイクルの段階
  • test type — 目的によってグループ化された統合テスト
  • integration — コンポーネントを組み合わせて動作するシステムにすること

Recommend more content related to this term