Software Engineering - Old Questions

11. What is integration testing? Differentiate between top-down and bottom-up integration testing.

6 marks | Asked in 2071

Integration testing is defined as a type of testing where software modules are integrated logically and tested as a group. A typical software project consists of multiple software modules, coded by different programmers. The purpose of this level of testing is to expose defects in the interaction between these software modules when they are integrated. Integration Testing focuses on checking data communication amongst these modules. 

Difference between top-down and bottom-up integration testing

Top Down Integration testing

Bottom Up Integration testing 

Top Down Integration testing is one of the approach of Integration testing in which integration testing takes place from top to bottom means system integration begins with top level modules.

Bottom Up Integration testing is one of the approach of Integration testing in which integration testing takes place from bottom to top means system integration begins with lowest level modules.

In this testing the higher level modules are tested first then the lower level modules are tested and then the modules are integrated accordingly.

In this testing the lower level modules are tested first then the higher level modules are tested and then the modules are integrated accordingly.

In this testing stubs are used for simulate the submodule if the invoked submodule is not developed means Stub works as a momentary replacement.

In this testing drivers are used for simulate the main module if the main module is not developed means Driver works as a momentary replacement.

Top Down Integration testing approach is beneficial if the significant defect occurs toward the top of the program.

Bottom Up Integration testing approach is beneficial if the crucial flaws encounters towards the bottom of the program.

The complexity of this testing is simple.

The complexity of this testing is complex and highly data intensive

It works on big to small components.

It works on small to big components.

In this approach Stub modules must be produced.

In this approach Driver modules must be produced.