Sandwich Testing | Software Testing

Prerequisite – Software Testing | Basics, Types of Software Testing
Sandwich Testing is the combination of bottom-up approach and top-down approach, so it uses the advantage of both bottom up approach and top down approach. Initially it uses the stubs and drivers where stubs simulate the behaviour ogf missing component. It is also known as the Hybrid Integration 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’s 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 in integrated only main target (middle) layer is remains for final test.

For example:

Advantage of Sandwich Testing:

  • Sandwich Testing approach is used in very large projects having sub projects.
  • It allows parallel testing.
  • Sandwich testing is time saving approach.
  • sandwich testing performs more coverage with same stubs.

Disadvantage of Sandwich Testing:

  • Sandwich Testing is very costly.
  • 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.

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at to report any issue with the above content.