システムテストとシステム統合テストの主な違いは、システムテストがシステム全体の動作をチェックするのに対し、システム統合テストはシステムの複数のモジュール間のデータ転送をチェックすることである。
ソフトウェアテストは、ソフトウェアが要求されるように動作していることを確認し、検証するプロセスです。
不具合の修正にかかる費用を抑えることができるため、できるだけ早くテストを開始することが望ましい。
テストには様々な種類があり、システムテストとシステムインテグレーションテストはそのうちの2つです。
システム統合テストは、システム内の一連のモジュールのテストを含みながら、さらに、システムテストは、システム全体のテストが含まれます。
システムテストとは
システムテストは、システム全体の挙動を全体としてチェックするものです。
さらに、指定された要件に対するシステムの適合性を評価するのに役立ち、完全に統合されたシステムをチェックして、システムが指定された要件を満たしていることを検証する。
例えば、医療センター管理システムを想定してみましょう。
このシステムには、患者モジュール、医師モジュール、診断書、支払いなどのモジュールがあります。
このようなシステム全体をテストするのがシステムテストです。
さらに、システムが指定された要件に従って動作することを確認する。
システムインテグレーションテストとは
システム統合テストとは、統合テストの別称です。
システムには複数のモジュールが存在する。
システム統合テストは、個々のモジュールの組み合わせを全体としてチェックする。
つまり、モジュール間のデータ転送をチェックする。
例えば、銀行のアプリケーションでは、送金を行った後、現在の残高を更新する必要がある。
この2つのモジュール間のデータ転送をチェックし、1つのグループとして正しく動作していることを確認するのが統合テストです。
統合テストには、大きく分けてトップダウンアプローチとボトムアップアプローチの2つのアプローチがあります。
トップダウン方式は上位のモジュールから順にテストし、ボトムアップ方式は下位のモジュールから順にテストする。
また、上位モジュールが完成していても下位モジュールが完成していない場合は、下位モジュールのスタブを作成して統合テストを行うことができる。
同様に、下位モジュールが完成しており、上位モジュールが完成していない場合は、上位モジュール用のドライバを作成し、統合テストを行うことができる。
スタブやドライバは、モジュールの完全な実装ではないが、モジュール間のデータ転送を確認するのに役立つ。
システムテストとシステムインテグレーションテストの違い
定義
システムテストとは、システムが指定された要件に準拠しているかどうかを評価するために、完全な統合システムに対して行われるテストのことである。
一方、システム統合テストは、個々のユニットを組み合わせ、グループとしてテストするソフトウェアテストのレベルです。
したがって、これがシステムテストとシステムインテグレーションテストの主な違いです。
機能性
システムテストがシステム全体をチェックするのに対し、システムインテグレーションテストは、複数のモジュール間のデータ転送をチェックします。
演奏曲目
システムテストとシステム統合テストのもう一つの違いは、システムテストが完全なシステムに対して行われるのに対して、システム統合テストはシステムのサブセットに対して行われることです。
結論
システムテストとシステム統合テストの主な違いは、システムテストがシステム全体の動作をチェックするのに対し、システム統合テストはシステムの複数のモジュール間のデータ転送をチェックすることである。