An approach to integration testing where the component at the top of the component hierarchy is tested first, with lower-level components being simulated by stubs. Tested components are then used to test lower-level components. The process is repeated until the lowest level components have been tested.
In this approach, testing is conducted from the main module to the submodule. if the submodule is not developed a temporary program called STUB is used for simulating the submodule.
* Advantageous if major flaws occur toward the top of the program.
* Once the I/O functions are added, the representation of test cases is easier.
* Early skeletal Program allows demonstrations and boosts morale.
* Stub modules must be produced
* Stub Modules are often more complicated than they first appear to be.
* Before the I/O functions are added, the representation of test cases in stubs can be difficult.
* Test conditions may be impossible, or very difficult, to create.
* Observation of test output is more difficult.
* Allows one to think that design and testing can be overlapped.
* Induces one to defer completion of the testing of certain modules.