Recent Posts

LightBlog
Responsive Ads Here

Monday, September 24, 2018

Difference between smoke and sanity testing with example?


Followed by regression test cases smoke test is performed first and sanity is performed next. software testing methodologies

  Smoke Testing is testing open an application very important and basic functionalities to make sure the application whether can be further tested or no.
For example:- If you are testing G-mail, then your smoke-test might include Gmail login, opening different folders and checking UI.

Sanity Testing is testing basic test cases from every module of your regression test suite testing one layer deep. software testing methodologies

For example:- If you are testing G-mail, then your sanity-test might include open emails,send emails, attach files, download file from email etc.
 In an application after login if user home page crashes then we cannot check further functionalities in that application.
About the difference when a question arises some say ‘Both are same’, and Others say ‘ They are Different’ and some ‘slightly similar’ between smoke and sanity.
 So, End of this post you will find out  how do we decide ? Well.
The things are checked in smoke and sanity testing. If in an e-commerce web application user is not able to browse the items then the user is not able to do go further operations.
The main testing like functional, regression, user acceptance testing is done, If builds get passed from smoke and sanity.
software testing methodologies
Smoke Testing :

Smoke testing is an end to end testing on the build performed ascertain to determine the stability of the program is working fine that the applications critical functionalities, it is done by.

Build : Its the application that is deployed for the QA to test, performed by the developers or testers.
software testing methodologies
Purpose :
The purpose of smoke testing is to determine that the build is stable or not is usually documented or scripted. If the build is stable, then the testing team proceeds for further testing.
 Which means in Smoke testing the build is accepted by testing team. If its not, then the build is rejected and sent back for the fixes is a subset of Acceptance testing.

Who does ?
It depends, QA team performs basic tests before starting the detailed testing. The Development team does smoke tests before deploying the build to make sure the build is good. On the other hand,

Why Smoke ?

Smoke testing is done to ensure that, the crucial functions of the program are working as expected, exercises the entire system from end to end and not concerned about the inner details. This is because, if the major functionality does not work, then there is no point in testing the other details.
(in a brief manner to touch every part of the application like a normal health checkup).
Smoke testing is done when build comes first time to check whether software is eligible for further detailed testing or not.
Example :

If your are given a G-Mail application to test, what are the important functions ? Login to g-mail, compose mail and send. Correct ? yeah! So, for instance if there is an error in sending an email , Does it make sense to test ‘Sent Mail’ , ‘Drafts’ , ‘Folders’ etc ? No, which means you are rejecting the build without further testing.
Functionalities are not dogged deeper.
software testing methodologies
Smoke Testing performed on particular build is also known as ‘Build Verification Test. The main focus is to test the critical areas and not finer details.

Sanity Testing:

Sanity testing is done to check whether the newly added functionality/ bug have been fixes are working as expected or not, usually performed by testers.
it also performed with minor changes in code, after receiving a software build, or functionality.
If sanity test cases are failed then there is not point in testing further as the required features or functionality is not available, is usually not documented and is unscripted.
Is a subset of regression testing exercises only the particular component of the entire system.
Sanity is performed after build is implemented in production or we may say is just to check that build working fine after deployment .

Example :

let us consider that , G-mail has added a new feature called ‘Auto acknowledgment which sends an return email that the email sent is delivered successfully.
Now this is a new feature to be tested and we already have a build that is stable. So, Testing the new feature is called sanity testing.
software testing methodologies
Similarities :

Sanity testing is related to smoke testing , We will look at the similarities below.

Both smoke and sanity are used as criteria for accepting or rejecting a build. Smoke is done to check the crucial functionality. whereas, sanity to check the new functionality.
Smoke is performed on relatively unstable product (initial builds) while sanity is done on stable builds.
Once the build passes smoke, the next step would be Functional testing and then regression testing.
For Sanity, if a new functionality is added then Functional testing and regression. If there is a bug fix its retesting and regression.
Note : Generally, only one of them is performed . But, if both are required then, Smoke testing is done at first and sanity next.
Sanity testing is  checking all features to confirm whether the requirements are met or not.
software testing methodologies
Importance of Smoke and Sanity Testing :

Consider an application which has 20 pages to be tested, if you do not perform the initial tests (smoke or sanity as per the build ) and start testing the details. what happens if there is critical bug in the 19th page which has an impact on other pages as well ? It’s a waste of time and effort which obviously effects the timelines and output.

Hence these are must in order to :
Save Cost
Save Time and effort
Quality improvement
Hence, The final conclusion is that , Smoke and Sanity testing have similarities but they are different. That’s It.
software testing methodologies
Hope to understand now. Please let me know if you any other questions. happy to help you out.

No comments:

Post a Comment