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 of missing component. It is also known as the Hybrid Integration Testing.
Strategy used in Sandwich Testing:
- It combines both top down and bottom up strategies.
- 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
- 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.
- 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.
- Test the user interface in isolation using stubs.
- Test the very lowest level functions by using drivers.
- When the complete system is in integrated only main target (middle) layer is remains for final test.
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.