Open In App
Related Articles

Sandwich Testing | Software Testing

Improve Article
Save Article
Like Article

Sandwich Testing is the combination of the bottom-up approach and top-down approach, so it uses the advantage of both the bottom-up approach and top-down approach. Initially, it uses the stubs and drivers where stubs simulate the behavior of a missing component. It is also known as Hybrid Integration Testing. 

Prerequisite – Software Testing | Basics, Types of Software Testing

Strategy used in Sandwich Testing: 

  1. It combines both top-down and bottom-up strategies. 
  2. Sandwich testing is basically viewed as 3 layers: 
    • (i) Main target layer
    • (ii) A layer above the target layer
    • (iii) A layer below the target layer
  3. In sandwich testing, testing is mainly focused for main target layer. This testing is selected on the basis of system characteristics and structure code.  
  4. It tries to minimize the number of hubs and drivers when there are more than 3 layers. 

How to perform Sandwich Testing? 

There are 3 simple steps to perform sandwich testing which are given below.  

  1. Test the user interface in isolation using stubs.
  2. Test the very lowest-level functions by using drivers.
  3. When the complete system is integrated only main target (middle) layer remains for final test.

For example: 

Advantages of Sandwich Testing:  

  • Sandwich Testing approach is used in very large projects having sub projects.
  • It allows parallel testing.
  • It is time saving approach.
  • Itperforms more coverage with same stubs.
  • Itcan be used to test both the functional and non-functional aspects of a system.
  • It can be used to test systems with complex dependencies.
  • It can be used to test systems with complex data structures.
  • It can be used to test systems with complex algorithms.
  • It is an effective way to test both the functionality and the performance of an application.
  • It is a well-defined process that can be easily repeated and documented.
  • It can be used to test applications of all sizes and complexity.
  • It is an efficient way to test applications that have a lot of functionality.

Disadvantages of Sandwich Testing: 

  • Sandwich Testing can not be used for such systems which have a lot of interdependence between different modules.
  • In sandwich testing the need of stubs and drivers is very high.
  • It is expensive to set up and maintain the necessary infrastructure.
  • here is a risk that the test environment may not be representative of the production environment, which could lead to inaccurate results.
  • There is a potential for human error when manually transferring data between the two environments.
Master Software Testing and Automation in an efficient and time-bound manner by mentors with real-time industry experience. Join our Software Automation Course and embark on an exciting journey, mastering the skill set with ease!
What We Offer:
  • Comprehensive Software Automation program
  • Expert Guidance for Efficient Learning
  • Hands-on Experience with Real-world Projects
  • Proven Track Record with 10,000+ Successful Geeks

Last Updated : 17 Jan, 2023
Like Article
Save Article
Similar Reads