スタブとドライバは、どちらもソフトウェア開発におけるテストで用いられるダミー部品ですが、役割が異なります。スタブは、テスト対象の下位モジュールを模擬し、上位モジュールから呼び出されるのを待ちます。一方、ドライバは、テスト対象の上位モジュールを模擬し、下位モジュールを呼び出します。
スタブ (Stub)
- 目的:テスト対象の下位モジュールを代替し、上位モジュールからの呼び出しを待ちます。
- 役割:下位モジュールがまだ実装されていない場合や、複雑な処理が必要な場合に、テスト対象のモジュールが正しく呼び出せるかを検証するために使用されます。
- 例:データベースへのアクセスを模擬する、外部APIへのリクエストを模擬するなど。
- テストの種類:ボトムアップテストで用いられます。
ドライバ (Driver)
- 目的:テスト対象の上位モジュールを代替し、下位モジュールを呼び出します。
- 役割:上位モジュールがまだ実装されていない場合や、特定の条件での動作を検証するために使用されます。
- 例:ユーザーインターフェースからの入力を模擬する、特定のイベントを発生させるなど。
- テストの種類:トップダウンテストで用いられます。
まとめ
項目 | スタブ | ドライバ |
---|---|---|
役割 | 下位モジュールを模擬、上位からの呼び出し待ち | 上位モジュールを模擬、下位モジュール呼び出し |
呼び出し側 | 上位モジュール | テスト対象(上位モジュール) |
テスト種類 | ボトムアップテスト | トップダウンテスト |
簡単に言うと、スタブは「呼ばれる側」、ドライバは「呼ぶ側」のダミーと考えてください。どちらも、テスト対象のモジュールが正しく動作するかを検証するために使用されます
ボトムアップテストの特徴を知りたい方はこちら
トップダウンテストの特徴を知りたい方はこちら
コメント