What is hybrid integration testing?

Integration testing

Integration testing is used to combine different modules and test their interface, as well as how efficiently they communicate amongst each other. Integration testing is performed after unit testing, as we need to ensure that all units are accurate before testing integration. Integration testing has various popular types, which can be listed as follows:

  1. Top-down integration testing: High-level modules in the control flow of architecture structure are tested before the lower-level modules. The integration is carried out in either a bread-first or depth-first manner. Then, the modules are integrated and tested.
  1. Bottom-up integration testing: Low-level modules in the control flow of architecture structure are tested before the higher-level modules. It is also known as inductive reasoning and is more user-friendly.

Hyrbid integration testing

Hybrid integrating testing takes advantage of both bottom-up and top-down integration. It is also known as sandwich testing.

In hybrid integration testing, we organize the product’s features as the main layer, a top layer, and a bottom layer. The top and bottom layers are above and below the main layer, respectively. The testing is focused on the main center layer for its code and features.

Advantages

The advantage of hybrid integration testing is that it makes the best of both top-down and bottom-up approaches. No important feature is treated insignificantly. Instead, the code and the testing are structured to incorporate all the main features. This makes the testing more extensive. Hybrid testing is especially useful for a large project that has various sub-projects.

Example of test cases

In hybrid integration, we can take 3 modules and see how test cases can be designed to test the integration between these modules. Suppose that an e-commerce application has 'login', 'order placement', and 'payment for order' modules. Each of these modules should work well separately, but in integration testing, we will test whether the login details are verified before the order is placed and whether an order is confirmed before asking for the details of the customer's payment.

Free Resources

Copyright ©2024 Educative, Inc. All rights reserved