Hybrid Testing Approach in Software Engineering

Hybrid Testing

  • Hybrid integration testing is also known as “Sandwich integration testing” or “Mixed integration testing”.
  • As the name defines, mixed approach is the mixture/combination of top-down integration testing and bottom-up integration testing.
  • In top-down integration testing, modules are tested at the top-level first. In bottom-up integration testing, modules at the lower-level tested first after that integrate them into upper-level module then tested.
  • In the sandwich/hybrid/mixed integration testing, top modules are tested with the lower-level modules and lower-level modules are combined with the top-level modules and tested.
  • Hybrid approach uses both the concepts “stubs” and “drivers”. It is necessary to develop stubs and drivers for testing.
  • This approach is used to overcome the disadvantages of top-down approach and bottom-up approach. Big-Bang approach focuses on the middle layer of the system while top-down and bottom-up approach focuses on middle to downwards and middle to upwards respectively.
  • This testing is mainly performed for test large projects.
  • This way helps in faster testing of the module’s interfaces.

Hybrid Approach

Working of Hybrid Testing :

The system to be tested is viewed as having three layers which is mentioned below :

  • A target layer in the middle.
  • A layer above the target known as the top layer.
  • A layer below the target known as the bottom layer.

Advantages of Hybrid Testing :

  • Sandwich testing is useful for large projects.
  • When the software product under test has modules, the size of which, is comparable with that of the main product itself, then also sandwich testing has been found to be extremely handy.
  • There is lesser requirements of stubs and drivers.
  • It takes less time to complete testing.
  • It is easy to develop test cases.
  • Integration is done when modules are implemented. 
  • This approach helps to test the modules’s interface very faster.

Disadvantages of Hybrid Testing :

  • This testing is not suitable where system or the product is inter-dependence between the different components/modules.
  • It can be more complicated to test. 
  • In this approach, it is difficult to localize faults.
  • Mixed testing requires high cost.
  • This approach is not suitable for small projects.
  • Different skill sets are required for software testers at the different levels of testing.