スタブ【テスト】
テスト用の代役だよ
テスト対象の部品から呼ばれる物の代わりだよ
張りぼてだよ
簡単に書くよ
スタブ【テスト】(英:stub)とは
テスト用に用意した、まだ完成していない機能の代わりとなる部品
であり
テスト対象から呼び出される部品の代わりとなるやつ
です。
ちょっと小難しい言い方をすると
下位モジュールの代用品
です。
詳しく書くよ
サクっと一言で説明すると
テスト対象から呼び出される部品の代わり
が「スタブ」です。
……と、いきなり言われても分かりませんよね。
大丈夫です。
例を挙げて説明します。
例えば、そうですね。
ピヨピヨシステムを作っていたとしましょう。
ピヨピヨシステムは、ピヨ太ママプログラムから指令を受けたピヨ子プログラムが、ピヨ太プログラムに指示を出す構成になる予定です。
おっと、ちまちま作っていたピヨ子さんが完成したようです。
早速、テストしましょう。
ですが、ピヨ太ママとピヨ太君が、まだできていません。
ピヨ太ママとピヨ太君が完成するまで、ピヨ子さんのテストは、できないのでしょうか?
いいえ、できます。
代わりを用意すれば良いのです。
まず、ピヨ太ママの代わりにピヨ子さんに指令を出すテストプログラムを用意します。
本来のピヨ太ママは、いろいろな指令を出しますけどね。
それはピヨ太ママが完成してから試しましょう。
とりあえずは、常に「ミカンを買って来い」な指令を出すことにします。
ピヨ太君の代わりにピヨ子さんの指示を受け付けるテストプログラムも用意しました。
本来のピヨ太君は、たまに失敗したりもしますけどね。
それはピヨ太君が完成してから試しましょう。
とりあえずは、常に成功する前提にします。
これで、パッと見は、ピヨ太ママ、ピヨ子さん、ピヨ太君が揃いました。
ピヨ子さんのテストができそうです。
この話において、ピヨ太君の代わりをしたテストプログラムがスタブです。
テスト対象から呼び出される部品の代わり
です。
あと、ついでなので書いておくと、ピヨ太ママの代わりをしたテストプログラムは「ドライバ」と言います。
ドライバは
テスト対象を呼び出す部品の代わり
です。
気が向いたら、セットで覚えてあげてください。
スタブ:テスト対象から呼び出されるやつの代用品
ドライバ:テスト対象を呼び出すやつの代用品
です。
スタブもドライバもリハーサル時の代役です。
大御所俳優の入りが遅れているので、とりあえずマネージャが台本を見て代わりを務めているイメージですかね。
また、スタブもドライバも中身は基本的に空っぽです。
実際の処理は(ほとんど)やりません。
スタブ:テスト対象から呼び出されて、結果を返す
ドライバ:テスト対象を呼び出す
が仕事なので、その部分だけ作り込むのが一般的です。
一言でまとめるよ
まぁ「スタブ」って単語が出てきたら「テスト用に用意した、本来の部品の代わり(で呼び出される方のやつ)なんだな~」と お考えください。






