The smoke testing and sanity testing are two types of initial level testing. In the initial level testing software is tested for readiness before the detailed testing by QA team. Initial level testing is also called as build acceptance testing. A build is a complied code packaged in a single file called as .exe file which can be used for installation of software.
The two terms smoke testing and sanity testing are sometimes used interchangeably. Below are the two terms smoke testing and sanity testing explained with examples.
It is testing technique which works similar to hardware testing. Suppose if u have any hardware device and you connect to the power and switched on if you get smoke then the test fails. In the same way it is applicable in software to test the basic functionality which is built. If it fails then it is considered as unstable. The primary goal of smoke testing is verify the main application functionalities and to satisfy the product. It shows those errors which saves the time as well as the developer’s effort. For example if a software has modules with the login page, main page and gallery. This testing deals whether the user is able to login properly with the valid credentials or is there a facility to create new user whether he can open the main page or gallery by logging in etc.
It is a basic or quick test done to the software when you don’t have enough time to do the other types of testing it is a part of regression testing or performed before retesting. It is done to check whether the system has acquired any new problem or any bugs has left unfixed. It is mostly done after retest that after fixing all bugs in the software. For example your software has five modules Login page, Main Menu page, Form filing page and Feedback page. If any new functionality should be added like there is no new user creation or password reset option in the application. Then the QA team sends the application to development team. The developer team adds functionality to the application and checks the functions of all other pages as retest for any other minor problems which has to be fixed. It is also called as quick regression testing. There is always confusion between sanity testing and smoke testing. Sanity testing is done when the developer or a tester wants to know the quick performance of the product. Smoke testing is done after the software is developed to check the critical functionalities of the software. Sanity testing is to show that minor changes in functions of the software does not affect to the main requirement of the product.
Check your understanding:
- Try to identify the differences and similarities between smoke testing and sanity testing.