
結合テストとは、システム開発プロセスにおいて実施されるテスト方法です。
結合テストのほかに、単体テストや機能テスト、システムテストがあり、開発の段階によって行うテストが変わります。
システム開発は、完成して終わりではありません。
開発したシステムを運用させることが目的であり、ユーザー満足度の高いシステムを納品するためには品質の高いテストが必要不可欠です。
今回は、結合テストの概要や種類、具体的なテスト方法や実施時の注意点などについてご紹介します。
目次
初めてプロジェクト担当者になった方向け
プロが教える「IT基礎知識・用語集」プレゼント
結合テストとは?

結合テストは、IT(Integration Test)、JT(Joint Test)とも呼ばれます。同時に複数のモジュールを稼働して、モジュール同士を結合した際に意図した通りに動作するかどうかを検証します。
事前にテスト仕様書を作成し、実際に行うテスト項目を決めてから行います。結合テストを実施する前に、単体テストの全項目を完了させましょう。
単体テストは、機能やモジュールが一つずつ問題なく動くかを確認するテストです。
結合テストでは、ただ動作するかどうかをテストするのではなく、操作と機能の対応関係に誤りがないか、また、動作が仕様通りであるかを検証します。単体テストによって、各モジュール内の機能連携や処理の流れが、仕様に沿って正しく動作するかを確認します。
結合テストの主な種類

システムやプロジェクトの規模によって、テストの範囲が変わります。大規模なプロジェクトであればあるほど、システムの数も機能も多いため、複数の工程に分割して順次検証を行う手法が一般的に採用されています。
●インタフェーステスト
インタフェーステストでは、個々の機能が正しく連携するかどうかを検証します。異なるデータ型間での受け渡しによる値の変化や不整合が発生しないか、データが正しく渡されているか、モジュール間の動作が仕様どおりかを確認します。
●業務シナリオテスト
業務シナリオテストとは、実際の業務フローを踏まえたテストです。目的とする業務内容や対象システムの特性によって、内容は変動しますが、実際に業務で行う工程や一日の流れをテスト仕様書として作成して検証します。ポイントは、イレギュラーケースを必ず含めることです。イレギュラーな操作は想定していないので、正常に動作しないことがあります。例えば、登録後のレコード削除ができるか、登録したレコードの変更ができるか、同じレコードを二つのアカウントで同時に更新ができないよう制御されているかなど、業務で想定される例外的なシナリオについても、漏れなく検証を実施することが求められます。
●負荷テスト
負荷テストとは、システムの負荷を限界までかけ、動作が遅くなったり停止したりしないかを確認するテストです。予想される連続稼働時間にわたりシステムを運転し、意図しない停止が発生しないことを検証します。稼働テストの問題例としては、エラーログ保存領域の見積もりが不十分であったことにより、100時間の稼働には問題がなくても、200時間稼働した場合にエラーログの保存領域に空きがなくなり、意図しない動作をしてしまうといったことが考えられます。
●ブラックボックステスト
ブラックボックステストとは、外部からの入力に基づいて正しく出力が実行されているかの動作を検証するテストです。 同テストでは、性能以外にも、デザインや操作性などをユーザー視点で確認することができます。 システムの内部構造やソースコードなどを考慮しないため、システムの概要を認識していない関係者以外の第三者でも実施できるテストです。 システムの仕様の誤りについては、ブラックボックステストで判断できないため、ホワイトボックステストを実施して、内部構造の検証を行いましょう。
【目的別】テストタイプ

結合テストは、検証の目的別に、6種類のテストタイプがあります。
- 疎通テスト
- 機能テスト
- 性能テスト
- 回帰テスト
- セキュリティテスト
- ユーザビリティテスト
テストタイプの特徴について、詳しく解説します。
●疎通テスト
モジュール同士をつないだ際に動作するか、データが問題なく行き来できているかを確認するテストです。 疎通テストを実施することによって、結合テストの初期に見つかるモジュール間の連携ミスを取り除けます。 疎通テストでモジュールの問題を取り除くことができれば、機能テストを行う際の工程での手戻りを減らせます。
●機能テスト
システムの機能が正常に動作するかを確認するテストです。 例えば、「会員登録フォームに入力をしたら、会員登録が完了する」「問い合わせフォームで問い合わせをしたら、返信メールが届く」などがあります。 それぞれの機能をテストしておくことで、手戻りを防ぐことが可能です。
●性能テスト
性能テストは、想定した時間内にレスポンスが返ってくるかを確認するテストです。 例えば、システム内でCTAボタンを押したときに、想定時間内にページが切り替わり、エラーにならずに画面遷移が実施されるかなどを確認します。 性能テストで、想定時間内にページが切り替わらない場合は、修正をして、想定時間内にレスポンスが返ってくるように調整しましょう。 性能テストで問題がなければ、負荷のない状態で正常に動くことを確認でき、負荷テストの整合性が取れます。
●回帰テスト
新機能の追加や不具合やエラーが起こった部分を修正した後に、変更を行っていない機能に不具合が起こっていないかを確認するテストです。 本来は、変更を行った部分以外もすべて不具合が起こっていないかの回帰テストを実施することが理想的ですが、現実的には実施は困難です。 そのため、新機能追加や不具合が出ていた部分を修正した場合に、不具合が発生しそうな場所に範囲を絞ってテストを実施しましょう。
●セキュリティテスト
悪意あるユーザーにシステムが攻撃された場合でも、システムは大丈夫かを検証するテストです。 セキュリティテストは、本番で使用するデータとは関係のないデータを使用し、システム上のセキュリティに問題がないかどうかを確認します。 悪意ある第三者による不正アクセスによって、ユーザーの個人情報を漏洩させないためにも、セキュリティテストは非常に重要なテストです。
●ユーザビリティテスト
ユーザー視点でシステムの操作性や使用感などの問題がないかを確認するテストです。 ユーザーが使用した場合に、使い勝手が良く、ストレスなくスムーズに操作ができるかを確認することで、システムを客観的に評価できます。 ユーザビリティテストでユーザーが直面する問題点を見つけ出し、改善することでユーザビリティの向上につながります。
結合テストの実施方式

結合テストには、トップダウンテストとボトムアップテストの二つの実施方式があります。具体的にどのようにテストを実施するのか、結合テストの実施方式について解説します。
●トップダウンテスト
トップダウンテストとは、上の階層のモジュールから順に下の階層をテストしていく方法です。上位から順にテストすることで、重要な部分を早い段階で確認できます。また、重要な上位モジュールを繰り返しテストすることになるので、重大な潜在バグを発見しやすいというメリットがあります。しかし、上位から順にテストする方式のため、下位モジュールの開発が一定水準まで完了していないとテストを実施できません。開発の初期段階では、テストをしながら開発を同時に行うことは難しいでしょう。
●ボトムアップテスト
ボトムアップテストは、下の階層のモジュールから順に上の階層をテストしていく方法です。開発初期の段階からテストを同時進行で行うことができるため、テストケースや仕様書の作成、結果チェックが手軽に行える点が利点です。一方、下位のモジュールからテストを行うため、最終段階で上位モジュールにバグが発見されると、修正作業が大きく膨らむ可能性があります。
結合テストを実施するときのポイント

結合テストは、開発するシステムの規模や対象によってテスト内容が大きく変動するため、すべてのシステムに適用可能な汎用的な結合テストは存在しません。ただし、結合テストを実施する際に押さえるべきポイントは、多くのケースで共通しています。実施時の注意点をしっかり覚えておきましょう。
●本番環境と同じ環境・データでテストをする
可能な限り、実際に運用する本番環境と同じ環境をテスト環境でも準備しましょう。システテストと本番環境が異なると「Chromeでは問題なく操作ができるが、本番環境のInternet Explorerでは操作ができない」といった問題が考えられるからです。同じミドルウェアやサーバ、バージョンを使えば、より良い質の高いテストができます。また、環境だけでなくデータやスケジュールも本番環境と差異のない状態であることが理想です。例えば、cron(ジョブスクリプトを自動実行するデーモンプロセス)を利用して自動的に実行されるジョブを本番環境で予定していれば、テスト環境でも同じ時刻に実行するようにcronを設定します。ジョブで利用するリソースが、同時刻にはほかの操作によって利用できずに失敗する可能性が考えられるため、スケジュールも本番環境と同じにしましょう。
●DBのデータを直接書き換えるのはNG
テストを簡易的に済ませようとして、DBに保存されているデータを直接追加・変更・削除してしまうことがあります。しかし、データを変更する場合には、必ずシステム上の機能を利用して変更するようにしましょう。システムの機能を駆使してデータを操作することで、これまで検証が漏れていた想定外の操作に起因する不具合を検出できる可能性があります。
●重要度が高い機能からテストを実施する
システム開発にかけられるコストや時間には限りがあるため、テストは重要度の高い機能からテストを実施することで効率的にシステム開発が行えます。 例えば、サービスの「資料請求」と「申し込み」のテストを行う場合、優先度が高いのは「申し込み」のテストとなります。 サービスの「申し込み」は、コンバージョンにあたるため、申し込みがスムーズに行えなければ、意味がありません。 優先すべき機能を見極め、優先順位をつけて効果的にテストを実施しましょう。
●テスト範囲は少しずつ広げる
テスト範囲を少しずつ広げるようにすれば、問題が発生したときに、どの部分に問題が発生しているかわかりやすく、不具合に早急に対処できます。 テスト範囲を広くした状態で不具合が発生した場合には、不具合が起こっている場所を探すことに時間がかかってしまいます。 テストは最終工程からではなく、最初の工程から順番に確認していくことで、いくつもの工程をさかのぼって不具合を探していく必要がなくなり、効率的にテストを進められます。
結合テストに関するよくある質問(FAQ)
ポイントを整理し、Q&A形式でまとめました。
Q. 結合テストとは何ですか?
A. 結合テストとは、複数のモジュールを組み合わせて連携動作を確認する、品質保証において極めて重要な工程です。単体テスト完了後に実施され、モジュール間のデータの受け渡しや機能間の整合性が仕様通りであるかを検証することで、システム全体としての不具合を早期に発見・排除することを目的としています。
Q. 結合テストの主な種類にはどのようなものがありますか?
A. インタフェーステスト、業務シナリオテスト、負荷テスト、およびブラックボックステストの4種類が主に用いられます。個々の機能連携から実際の業務フローを想定した検証、システムの限界性能の測定、さらには内部構造を意識しない外部仕様の確認まで、目的に応じて最適な手法を使い分けることが一般的といえます。
Q. 結合テストのテストタイプ(目的別)を教えてください。
A. 疎通、機能、性能、回帰、セキュリティ、およびユーザビリティテストの6つの目的別タイプがあります。データの行き来を確認する基本検証から、操作性や安全性の評価、修正後の影響範囲の確認まで多角的に実施することで、多面的なシステムの品質を担保することが求められます。
Q. 結合テストの実施方式(アプローチ)には何がありますか?
A. 主に「トップダウンテスト」と「ボトムアップテスト」の2つのアプローチが存在します。上位モジュールから順に検証して全体像を早く掴む方式と、下位モジュールから積み上げて開発と並行しやすい方式があり、プロジェクトの状況やリスク箇所に合わせて最適な方式を選択することが推奨されます。
Q. 結合テストを実施する際の重要なポイントは何ですか?
A. 本番環境の再現、システムを通じたデータ操作、重要機能の優先、および段階的な範囲拡大の4点が重要といえます。実行環境の精度を高めるとともに、不具合の特定を容易にするためスモールステップで進めること、誠にビジネスへの影響が大きい機能から着手することが、効率的かつ高品質なテストを実現する鍵となります。
綿密な結合テストが高品質のシステム納品につながる
システム開発において、結合テストは個々の機能が連携して正しく動作するかを確認する、品質確保のための重要なフェーズです。 どんなに優れた機能を持っていても、データ連携の不具合や予期せぬエラーが残っていては、ユーザーからの信頼を損なってしまいます。高品質なシステムを納品するためには、網羅的なテスト仕様書の作成と、それに基づく正確な検証が欠かせません。
しかし、開発当事者だけでテストを行うと、「正しく動くはず」という思い込みからバグを見落としてしまったり、検証のためのリソース確保が難しかったりするケースも少なくありません。 より確実な品質を担保するためには、第三者視点を持つ検証のプロや、テスト工程に強みを持つ開発パートナーに依頼するのも一つの賢い選択です。
下記の記事では、結合テストや、その後の工程であるシステムテストに定評のある開発会社を厳選して紹介しています。「検証の質を高めたい」「信頼できるパートナーを探している」という方は、ぜひ参考にしてみてください。
システム開発の最適な発注先をスムーズに見つける方法
システム開発会社選びでお困りではありませんか?
日本最大級のシステム開発会社ポータルサイト「発注ナビ」は、実績豊富なエキスパートが貴社に寄り添った最適な開発会社選びを徹底的にサポートいたします。
ご紹介実績:29,600件(2026年2月現在)
外注先探しはビジネスの今後を左右する重要な任務です。しかし、
「なにを基準に探せば良いのか分からない…。」
「自社にあった外注先ってどこだろう…?」
「費用感が不安…。」
などなど、疑問や悩みが尽きない事が多いです。
発注ナビは、貴社の悩みに寄り添い、最適な外注探し選びのベストパートナーです。
本記事に掲載するシステム会社以外にも、最適な開発会社がご紹介可能です!
ご相談からご紹介までは完全無料。
まずはお気軽に、ご相談ください。 →詳しくはこちら
初めてプロジェクト担当者になった方向け
プロが教える「IT基礎知識・用語集」プレゼント



