スタブ 【stub】
概要
スタブ(stub)とは、切り株、半券、(何かが減ったり短くなった)残り、などの意味を持つ英単語。ITの分野では、本物が用意できないときに動作に支障が無いようにとりあえず置いておく代用品という意味で用いられることが多い。ソフトウェアテストで、あるモジュール(部品)の動作をテストする際、呼び出し先の下位モジュールの代わりをする空のモジュールのことをスタブという。下位モジュールが未完成なうちに上位モジュールのテストをしたい場合に用意される。これとは逆に、下位モジュールを呼び出すだけの機能を持った上位モジュールの代用品は「ドライバ」(テストドライバ)という。
スタブは本物の下位モジュールと同じ名称や引数、返り値の型などを持ち、上位モジュールから同じコードで呼び出される。内部は空で何も処理を行わないが、本物と同じような値を返さなければならない場合には、想定される返り値の一つをあらかじめ算出しておき、これを定数として機械的に返却するといった処理を行うことが多い。
また、分散システムなどで、ローカル側でメソッド呼び出しなどを受け付けるオブジェクトなどのことをスタブということがある。自身は処理そのものは行わずリモート側への仲介を行う機能のみを持つ。スタブ自体はローカルであるため、呼び出し元は通信の詳細を意識せずローカル呼び出しのみを用いてコードを記述することができる。
(2018.6.22更新)