平成21年度 春期 午前 問47
開発技術
スタブの役割
結合テストで用いられるスタブの役割はどれか。
- アテストが完了したモジュールの代わりに結合される。
- イテスト対象のモジュールからの呼出し命令の条件に合わせて,値を返す。
- ウテスト対象のモジュールからの呼出し命令の条件に合わせて,テストデータを自動生成する。
- エテスト対象のモジュールを呼出し命令で呼び出す。
答えと解説を見る
✓ これが正解イテスト対象のモジュールからの呼出し命令の条件に合わせて,値を返す。
解説
呼び出される側の代わりに条件どおりの値を返す部品です。
この設問は、結合テストにおいてスタブが担う役割を選ばせています。ですから、選び方の軸は、その部品がテスト対象から呼び出される側に置かれるのか、それとも呼び出す側に置かれるのか、そして本物ができるまでの間、何を代替するのか、という一点で見分けます。求められているのは、テスト対象のモジュールが呼び出す先に置き、まだ本物が用意できていない下位側の役目を代わりに引き受ける部品です。中身は簡略で、呼び出しの条件に合わせて決められた値を返すだけの実装になっており、テスト対象の側だけを先に組み合わせて動かすためにあります。したがって、呼び出しの条件に合わせて値を返すと述べているものが、この位置づけと役目に合います。他の三つは、完成モジュールの置き換えという段階の話、値を返すのではなく自動生成する話、テスト対象を呼び出す側に立つ話、というそれぞれ別の道具や別の位置の説明で、下位を代替して値を返すというスタブの役目とは異なります。
ほかの選択肢はなぜ違うのか
- アテストが完了したモジュールの代わりに結合…:テストが完了したモジュールの代わりに結合されるものと述べています。完成した本物と入れ替わって並ぶ位置づけの話で、まだ本物が用意できていない下位側の役目を代替するというスタブの立ち位置とは局面が違います。
- ウテスト対象のモジュールからの呼出し命令の…:呼び出しの条件に合わせてテストデータを自動生成するものと述べています。求められているのは、条件に応じて決められた値を返すという最小限の実装の代替物で、データを作り出す仕組みを備えるものとは役目の重さが違います。
- エテスト対象のモジュールを呼出し命令で呼び…:テスト対象のモジュールを呼び出し命令で呼び出すものと述べています。これはテスト対象を上から呼ぶ側の役目を代替する別の部品の説明で、下位側を代替して呼び出しを受ける役目とは立ち位置が反対です。
この問題の用語
- テスト決めたとおりに動くかを、実際に動かして確かめる作業のこと。何を確かめるかによって移行テスト、システムテストなどと呼び分けます。
出典:平成21年度 春期 応用情報技術者試験 午前 問47
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)