Skip to content
All notes
08Testing TypesTesting TypesIntegration

What is Integration Testing and what are its approaches?

Integration Testing is the process of testing the interfaces and interaction between integrated components or modules. It verifies that different modules work together as expected when combined.

Integration Testing Approaches

1. Big Bang Integration:

  • All modules are integrated simultaneously and tested together
  • Pros: Quick to implement
  • Cons: Difficult to isolate defects, late defect detection

2. Top-Down Integration:

  • Testing starts from top-level modules and progresses downward
  • Uses stubs for lower-level modules not yet developed
  • Pros: Early prototype, critical modules tested first
  • Cons: Requires stubs, lower-level issues found late

3. Bottom-Up Integration:

  • Testing starts from lowest-level modules and progresses upward
  • Uses drivers for higher-level modules
  • Pros: Easier to create test conditions, no stubs needed
  • Cons: Critical modules tested late, requires drivers

4. Sandwich/Hybrid Integration:

  • Combination of top-down and bottom-up approaches
  • Tests from both ends simultaneously
  • Pros: Balanced approach, parallel testing possible
  • Cons: Complex to manage, requires both stubs and drivers

What to Test

  • Data flow between modules
  • Interface compatibility
  • Exception handling across modules
  • Database interactions
  • API integrations