結合テストとは?ITパスポートで押さえるスタブ・ドライバとの関係

結合テストで複数のプログラム部品を連携確認するイメージ画像

結合テストは、単体テストを終えた複数のモジュールを組み合わせ、モジュール間のデータ受け渡しや呼び出しが正しく動くかを確かめるテストです。各部品が単独で動いても、連携すると形式や順序の違いで不具合が起こるため、境界部分を確認します。

目次

結合テストの定義と仕組み

まだ完成していないモジュールがあるときは代用品を使います。下位モジュールの代わりに呼び出し結果を返すものがスタブ、上位モジュールの代わりに下位モジュールを呼び出すものがドライバです。どちらを使うかは、どちら側から結合を進めるかで決まります。

似た用語との違い

用語 役割 主な対象
単体テスト 一つのモジュールの内部を確認 関数・部品単位
結合テスト モジュール間の連携を確認 インタフェース・データ連携
システムテスト システム全体の要求を確認 業務シナリオ・性能

「下位モジュールの代役」とあればスタブ、「上位モジュールの代役」とあればドライバです。「部品間のインタフェース」が焦点なら結合テストを選び、利用者の要求全体ならシステムテストを選びます。

仕事での具体例

ネットショップの注文機能で、注文画面、在庫引当、決済の各モジュールを接続します。決済サービスが未接続なら、決済成功を返すスタブを用意し、注文後に在庫が正しく減るかを確認します。

日常生活での具体例

家計簿アプリで銀行明細を取り込み、カテゴリ分けして月計を表示する流れを考えると、各画面が表示できてもデータ形式が合わなければ合計がずれます。この連携の確認が結合テストのイメージです。

ITパスポートでの見分け方

「下位モジュールの代役」とあればスタブ、「上位モジュールの代役」とあればドライバです。「部品間のインタフェース」が焦点なら結合テストを選び、利用者の要求全体ならシステムテストを選びます。 問題文では、目的、対象、作業の段階を順に確認します。用語の日本語訳だけで判断せず、誰が何を管理し、どの結果を得たいのかを短く言い換えると、選択肢の違いを整理できます。

理解を確かめるポイント

結合テストの選択肢では、正常なデータだけでなく、形式違い、欠損、通信失敗の扱いも連携の確認対象です。注文番号が画面、在庫、決済で同じ形で渡るかを考えると、単体テストでは見えにくい不具合を区別できます。

確認問題

  1. 問題1:結合テストで主に確認するものは何ですか。
    答え:モジュール間の連携
  2. 問題2:下位モジュールの代わりをするものは何ですか。
    答え:スタブ
  3. 問題3:上位モジュールの代わりをするものは何ですか。
    答え:ドライバ

次に読む記事

関連する用語を役割ごとに続けて学ぶと、単独の暗記ではなく、問題文に出る業務の流れとして理解できます。

目次