Discuss the advantage and disadvantage of integration testing

This question appears in Mumbai University > Software Testing & Quality Assurance Subject

Marks: 5 M

Year: June 2012

1 Answer

Integration testing:

  • The objective of system integration is to build a “working” version of the system by (i)putting the modules together in an incremental manner and (ii) ensuring that the additional modules work as expected without disturbing the functionalities of the modules put together.

Advantages of integration testing:

  • Integration testing provides a systematic technique for assembling a software system while conducting tests to uncover errors associated with interfacing.

  • The application is tested in order to verify that it meets the standards set by the client as well as reassuring the development team that assumptions which were made during unit testing are correct.

  • Integration testing need not wait until all the modules of a system are coded and unit tested. Instead, it can begin as soon as the relevant modules are available.

  • Integration testing or incremental testing is necessary to verify whether the software modules work in unity.

  • System Integration testing includes a number of techniques like Incremental, Top- down, Bottom –Up, Sandwich and Big Bang Integration techniques.

Disadvantages of Integration testing :

The Software Industry uses variety of strategies to execute Integration testing , that are :

  • Big Bang Approach :

  • Incremental Approach: which is further divided into following

    • Top Down Approach

    • Bottom Up Approach

    • Sandwich Approach - Combination of Top Down and Bottom Up

Big Bang Approach :

  • Here all component are integrated together at once, and then tested.


  • Fault Localization is difficult.

  • Given the sheer number of interfaces that need to be tested in this approach, some interfaces links to be tested could be missed easily.

  • Since the integration testing can commence only after "all" the modules are designed, testing team will have less time for execution in the testing phase.

  • Since all modules are tested at once, high risk critical modules are not isolated and tested on priority. Peripheral modules which deal with user interfaces are also not isolated and tested on priority.

Incremental Approach:

In this approach, testing is done by joining two or more modules that are logically related. Then the other related modules are added and tested for the proper functioning. Process continues until all of the modules are joined and tested successfully.

Incremental Approach in turn is carried out by two different Methods:

  • Bottom Up

-Top Down

Bottom up Integration

In the bottom up strategy, each module at lower levels is tested with higher modules until all modules are tested. It takes help of Drivers for testing


  • Critical modules (at the top level of software architecture) which control the flow of application are tested last and may be prone to defects.

  • Early prototype is not possible

Top down Integration:

In Top to down approach, testing takes place from top to down following the control flow of the software system.


  • Needs many Stubs.

-Modules at lower level are tested inadequately.

Please log in to add an answer.