トップダウンテスト 【top-down testing】
概要
トップダウンテスト(top-down testing)とは、ソフトウェアやシステムのテスト手法の一つで、上位のモジュールから順に結合しながら動作を検証していく方式。複数のモジュール(部品)を組み合わせてソフトウェアなどを開発する場合、問題の発生箇所を特定しやすくするため、いきなりすべてを繋いで一気に調べるのではなく、少しずつ追加していきながら何度も繰り返し試験する「結合テスト」がよく用いられる。
その際、「スタブ」(stub)と呼ばれるダミーの下位側(呼び出される側)のモジュールを用意し、上位モジュールから順に結合してテストする方式をトップダウンテストという。上位モジュールに問題が見つからなければ、スタブを本物の下位モジュールに置き換えて再びテストが行われる。同じ手順を何段階も繰り返し、上位側から下位側へ順番にテスト対象を広げていく。
最上位のモジュールからテストしていくため、システムの中枢部分に致命的なバグがある場合などに早期に発見して取り除くことができるメリットがある。一方、プログラミングとテストを並行して行おうとするとスタブを大量に用意しなければならない。
一方、下位モジュールから順に結合しながらテストを繰り返す手法を「ボトムアップテスト」、上位側と下位側から同時に結合していく手法を「サンドイッチテスト」(折衷テスト)、全モジュールの完成後にすべて結合して一気にテストする手法を「ビッグバンテスト」という。
(2018.8.28更新)