Incremental testing in software

The incremental testing approach has the advantage that the defects are found early in a smaller assembly when it is relatively easy to detect the cause.

  • Another advantage is that all programs are integrated one by one and a test is carried out after each step. 
  • A disadvantage is that it can be time-consuming since stubs and drivers have to be developed and used in the test.
  • Within incremental integration testing a range of possibilities exist, partly depending on the system architecture:
    • Top down: Testing takes place from top to bottom, following the control flow or architectural structure (e.g. starting from the GUI or main menu). Components or systems are substituted by stubs.
    • Bottom up: Testing takes place from the bottom of the control flow upwards. Components or systems are substituted by drivers.
    • Functional incremental: Integration and testing  takes place on the basis of the functions and functionalities, as documented in the functional specification.