Monday April 13, 2020
Smoke testing vs sanity testing! which one hail? To be frank, each process is important and the situation and requirement demand which one to choose from.
However, the comparison depicted here in this blog will help you understand more about smoke and sanity testing.
Smoke Technique is one of the testing types that’s instigated from hardware testing.
This technique comes into the scenario at the time of attaining build software from the development team.
The main reason to go for the smoke testing is to find out whether the software which is built is testable or not.
It is usually done at the point where the software is built. This process has been given another name as well. It is actually called “Day 0″.
The smoke Testing process is counted as the best one because it is a time-saving one.
The most astounding feature about the process is that the time consumed is less since the testing is only done when the main functions of the application are not properly working or if certain major bugs are not sorted till that moment.
The main emphasis of Smoke Testing is on the working of the major features and primary functions of the application.
Going for the test is the basic and important feature of an application before one goes for the deep, accurate testing (before understanding all probable positive and negative values) is referred to as smoke testing.
The whole emphasis while going for the smoke testing is on the productive flow of the claim and it possesses only the verified data, not the unacceptable one.
In smoke testing, the process confirms every build is testable or not; hence it is called Build Verification Testing.
When smoke testing is being conducted then one can look for the blocker bug at the initial period only so that the test engineer just doesn’t have to sit idle, or they can go on further and do the analysis of the independent testable modules.
Which test comes first smoke or sanity?
Smoke testing is usually performed on a new build/feature. The main motto behind smoke testing is to ensure that the software is ready to be tested.
Sanity testing is performed when time is not at the disposal of the dev team. Smoke testing is done first and then the application goes through quick regression or sanity testing
What is the process for conducting smoke testing
The process to Conduct Smoke Testing:
For Smoke testing, there is no requirement to create test cases. In this, the only requirement is to pick the required test cases from the already created test cases.
As stated before too, Smoke Testing emphasis the workflow of core applications so that choosing test case suits that cover the main functionality of the application is done.
It is vital to bring down the number of test cases as much as possible and the time of implementation should not be more than half an hour.
When smoke testing is performed
Usually when the new build is implemented then one round of smoke testing is conducted because there are chances of blocker bugs in the latest one which is created.
However, there can be a certain change that might have wrecked a major feature that as fixing the bug or adding a new function which can affect a major piece of the original software, or the smoke testing is done where the installation is taking place.
When the stable build is all installed then smoke testing is conducted to find the blocker bug.
Why is smoke testing done?
There are certain reasons because of which smoke testing is conducted. Stated below are the important ones.
Types of Smoke Testing
The Smoke testing is further divided into two types:
Formal smoke testing
In this, kind of testing the application is sent to the Test Lead by the development team.
Further, the test lead will divide the task of testing the app among respective tests along with reports which state the whole scenario after going through the smoke testing.
Once the testing team is over with smoke testing, they will report for the testing done to the test lead.
Informal smoke testing
Here, the Test lead notifies that the application is all set for further testing.
The test leads do not give any specific instructions to perform the smoke testing, but still, the testing team begins with the testing procedure of the application by going for the smoke testing.
Example for smoke testing
A detailed explanation about smoke testing and example for the process is given in this blog, please go through
Sanity Testing is a division of regression testing. Sanity testing is usually done to make sure that the code changes which are being done are carried out properly.
Sanity testing is a general strike to note down that the testing for the build can further go on or not.
The main emphasis of the team while doing the sanity testing process is to confirm the functioning of the application and not about the detailed testing.
Sanity testing is usually carried out on build where the production deployment is essential right away similar to a critical bug fix.
The functionality of Sanity Testing:
The main reason for which sanity testing is conducted is to know about the changes or the projected functionality is being done in the same order as it was mentioned.
If the sanity test fails, the software product is declined by the testing team to stay on a safer side in terms of time and money.
It is carried out once the software product has carried out the smoke test and the Quality Assurance team has acknowledged for the further testing.
Features of Sanity Testing:
Sanity testing is further a division of regression testing and emphasizes the smaller part of the application.
There is no such script available for sanity testing most of the time.
There is no documentation required for the sanity testing so it is undocumented.
Sanity testing is narrow but at the same time it is an extensive approach of testing where limited functionalities are covered in depth.
Usually, sanity testing is carried out by the testers only.
Advantages of Sanity Testing:
Example for Sanity Testing
Sanity Testing Process
The main reason for which the sanity test is performed is to know about the incorrect outcomes or faults which are not accessible in the constituent process.
Even it is done to make sure that the newly added features do not disturb the functionalities of ongoing features.
Further, three steps are implemented in the sanity testing process that is Identification, Evaluation, and Testing
In the sanity testing process, the first step is the Identification one where one finds out the newly added constituents and features along with the adjustment there in the code while going for the process of fixing the bug.
Once the identification step is completed, one needs to analyze the recently implemented constituents, characteristics and further change them so as to verify their proposed and suitable working as mentioned in the stated requirements.
After performing the identification and evaluation step one needs to go further to the third step which is testing.
In this step, we examine and evaluate all the connected constraints, constituents, and fundamentals of all the above analyzed attributed and change them so as to ensure that all of it is working properly.
Once all the above-stated steps are going in the right manner, the build can be made to undergo more exhaustive and strenuous testing, and the release can be carried further for the thorough testing process.
Comparison of Smoke Testing and Sanity Testing
Thus both the tests have their own unique traits which make them required for the software processes.
|Smoke Testing||Sanity Testing|
|Used for checking critical functionalities of a software||The focus will be on a particular area or minor functionalities|
|Performed to check the stability||Used to verify the rationality|
|Both manual and automated test cases can be used||Generally, sanity testing does not have a test script or test cases|
|Usually performed before passing the build to the testing team||Executed before UAT and regression|
|Carried over by developers||Performed by testers|
|A subset of acceptance testing||A subset of regression testing|
Hope you got to know the difference between sanity testing and smoke testing and are able to understand, smoke testing vs sanity testing has no meaning to it as both processes have equal importance.