ISTQB Foundation Level 4.0 のシラバス第2章「SDLC全体におけるテスト」では、テストレベルとテストタイプの理解が重要なテーマとなっています。
今回はその中から、「コンポーネント統合テスト(Component Integration Testing)」について詳しく解説します。
■ コンポーネント統合テストとは?
コンポーネント統合テストとは、複数のコンポーネント(部品)間のインターフェースや相互作用を確認するテスト のことです。
ISTQB Foundation 4.0 の新シラバスでは、従来の「Integration Testing(統合テスト)」がさらに細分化され、以下の2つに分かれました。
-
Component Integration Testing(コンポーネント統合テスト)
-
System Integration Testing(システム統合テスト)
これにより、より明確に異なるレベルでの「統合」を評価できるようになっています。
■ なぜ「Integration Testing」というレベルがなくなったのか?
これまでのシラバスでは「統合テスト(Integration Testing)」が独立したレベルとして存在していました。
しかし、実際の開発現場では統合は1つの段階に限られず、複数のレベルで行われるのが一般的です。
そのためISTQBでは、統合をより現実的に捉え、以下のように分類しました:
|
統合の種類 |
説明 |
|---|---|
|
コンポーネント統合テスト |
同一モジュール内のコンポーネント同士の連携を確認 |
|
システム統合テスト |
モジュール間やシステム間の連携を確認 |
このように、統合は単一の工程ではなく、さまざまな階層で行われる活動として扱われています。
■ コンポーネント統合テストの目的
コンポーネント統合テストの目的は、各コンポーネントが正しく連携・通信できるかを確認することです。
主に以下の点を確認します:
-
コンポーネント間のデータ受け渡しが正しいか
-
インターフェース仕様に従って通信が行われているか
-
不正な入力や状態変更に対して依存関係が正しく動作するか
■ 実例で理解する:登録フォームの連携
わかりやすい例として、「ユーザー登録フォーム」を考えてみましょう。
このフォームには、次の3つのドロップダウン項目があります。
-
国(Country)
-
州/都道府県(State / Province)
-
市(City)
このとき、次のような連携が発生します:
-
「国」を選択すると、その国に対応する「州/都道府県」が自動でリストに表示される
-
「州/都道府県」を選ぶと、その地域に属する「市」が表示される
-
もし「国」を変更すると、州と市はリセットされる
このように、1つの選択が他のコンポーネントの状態に影響を与えるケースがコンポーネント統合テストの対象です。
つまり、これらの連携部分(インターフェース)が正しく機能するかを検証するのが、このテストの目的です。
■ 使用される統合戦略(Integration Strategies)
コンポーネント統合テストでは、以下のような統合戦略を用いてテストを進めます。
-
トップダウンアプローチ(Top-Down)
→ 上位コンポーネントから順に統合してテストする手法。スタブを使用することが多い。
-
ボトムアップアプローチ(Bottom-Up)
→ 下位コンポーネントから順に統合していく方法。ドライバを使って上位層を模擬する。
-
ビッグバンアプローチ(Big Bang)
→ 全コンポーネントを一気に統合し、全体の動作をテストする。問題発見は遅れやすい。
■ コンポーネント統合テストを実施するかどうか
すべてのプロジェクトでコンポーネント統合テストを実施する必要はありません。
アプリケーション内部で明確な「コンポーネント間の連携」が存在しない場合は、
直接システム統合テストへ進むこともあります。
■ システム統合テストとの違い
|
テストレベル |
対象範囲 |
主な目的 |
|---|---|---|
|
コンポーネント統合テスト |
同一モジュール内の複数コンポーネント |
内部連携の検証 |
|
システム統合テスト |
異なるモジュール・システム間 |
全体の統合挙動の確認 |
例えば、Webアプリケーションで「ログイン機能」と「ユーザープロファイル管理」を別モジュールとして作っている場合、
両者のデータ連携は「システム統合テスト」で扱われます。
■ APIやWebサービスも統合対象
近年のシステム開発では、**API(REST / SOAPなど)**を通じたシステム連携が主流です。
これらも「アプリケーション同士のインターフェース」であるため、
コンポーネント統合テストやシステム統合テストの一部として実施されます。
たとえば、
-
正しいリクエストを送信できるか
-
正しいレスポンスが返ってくるか
-
エラーコードやステータス処理が正しく動くか
といった観点が重要です。
■ まとめ:統合テストは“1回きり”ではない
ISTQB Foundation 4.0 の新シラバスでは、統合テストが段階的に行われることを強調しています。
-
Component Integration Testing:モジュール内の連携を確認
-
System Integration Testing:モジュール間・システム間の連携を確認
このように段階的に統合をテストすることで、問題を早期に発見し、システム全体の品質を高めることができます。
🔗 次回予告
次のチュートリアルでは、さらに上位レベルの「システム統合テスト(System Integration Testing)」を詳しく解説します。
✅ まとめポイント
-
コンポーネント統合テストは、同一モジュール内のコンポーネント間の連携確認を目的とする。
-
ISTQB 4.0 では「統合テスト」を「コンポーネント統合」と「システム統合」に分割。
-
統合戦略には トップダウン/ボトムアップ/ビッグバン がある。
-
API連携やデータフローも統合テストの対象。
-
統合テストは1度きりの活動ではなく、複数レベルで実施される。



コメント