Open In App

Difference between End-to-end Testing and Sandwich Testing

Last Updated : 21 Nov, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

1. End-to-end Testing : End-to-end testing is the type of software testing used to test entire software from starting to the end along with its integration with external interfaces. The main purpose of end-to-end testing is to identify system dependencies and to make sure that the data integrity and communication with other systems, interfaces and databases to exercise complete production.

 2. Sandwich Testing : Sandwich Testing is also called as the hybrid integration testing. It comprise the bottom-up approach testing and top-down approach testing, therefore it uses the advantage of both bottom up approach and top down approach. It also can not be used for those systems which have a lot of interdependence between different modules and it allows parallel testing. 

Difference between End-to-end Testing and Sandwich Testing 

S.No. End-to-end Testing Sandwich Testing
1. In end-to-end testing, the behavioral flow of software is tested. In sandwich testing, Top-down approach and Bottom-up approach is used for testing.
2. It validated all the interfaces of the software. It follows the specification of modules.
3. It is generally performed manually. It generally focuses on functional verification.
4. It is cost efficient. It is not cost efficient.
5. In this, knowledge about interconnected systems is required. In this, knowledge of interconnected systems is not required.
6. In this, there is need of fewer resources for testing. In this, there is need of large number of resources.
7. It does not allow parallel testing. It allows parallel testing.
8. It validated all the interfaces of the software. It validates the software system as per standards and specifications.
9. It is a type of testing that covers the entire system from start to finish. It is a type of testing that covers only the middle layer of the system.
10. It is typically used to test the functionality of the system as a whole. It is typically used to test the functionality of individual components.
11. It is typically done by developers. It is typically done by testers.
12. It is typically done before sandwich testing. It requires all components of the system to be integrated and working together.
13. It is more likely to find bugs than sandwich testin. It is less likely to find bugs.
14. It is better at finding functional bugs than sandwich testing. It is better at finding performance bugs.
15. It is better at finding integration bugs than sandwich testing It is better at finding regression bugs.
16. It is more likely to cause system downtime than sandwich testing It is less likely to cause system downtime.
17. It takes longer than sandwich testing Sandwich testing is faster.
18. It is typically done by developers It is typically done by testers.

Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads