0% found this document useful (0 votes)
203 views

Sanity Testing Vs Smoke Testing - Introduction and Differences

Smoke testing and sanity testing are software testing techniques that verify a new build or minor code changes. Smoke testing checks that critical functions work as expected to determine if further testing is worthwhile. It aims to verify stability. Sanity testing checks that new functionality or bug fixes work rationally to verify further testing can proceed. It aims to verify rationality. The key differences are that smoke testing verifies the entire system and is done by developers or testers, while sanity testing verifies specific components and is done by testers. Smoke testing is documented and part of acceptance testing, while sanity testing is undocumented and part of regression testing.

Uploaded by

Florin Condurat
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
203 views

Sanity Testing Vs Smoke Testing - Introduction and Differences

Smoke testing and sanity testing are software testing techniques that verify a new build or minor code changes. Smoke testing checks that critical functions work as expected to determine if further testing is worthwhile. It aims to verify stability. Sanity testing checks that new functionality or bug fixes work rationally to verify further testing can proceed. It aims to verify rationality. The key differences are that smoke testing verifies the entire system and is done by developers or testers, while sanity testing verifies specific components and is done by testers. Smoke testing is documented and part of acceptance testing, while sanity testing is undocumented and part of regression testing.

Uploaded by

Florin Condurat
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

10/27/21, 11:00 PM Sanity Testing Vs Smoke Testing: Introduction and Differences

Sanity Testing Vs Smoke Testing: Introduction and


Differences
By Thomas Hamilton Updated October 8, 2021

Smoke and Sanity testing difference is the most misunderstood topic in Software Testing.
There is an enormous amount of literature on the subject, but most of them are confusing.
The following article makes an attempt to address the confusion.

The key differences between Smoke Testing and Sanity Testing can be learned with the help
of the following diagram –

Smoke Testing vs Sanity Testing

To appreciate the above diagram lets first understand –

What is a Software Build?


If you are developing a simple computer program which consists of only one source code
file, you merely need to compile and link this one file, to produce an executable file. This
https://www.guru99.com/smoke-sanity-testing.html 1/6
10/27/21, 11:00 PM Sanity Testing Vs Smoke Testing: Introduction and Differences
le, you e ely eed to co p le a d l t s o e le, to p oduce a e ecutable le. s
process is very simple.

Usually, this is not the case. A typical Software Project consists of hundreds or even
thousands of source code files. Creating an executable program from these source files is a
complicated and time-consuming task.

You need to use “build” software to create an executable program and the process is called ”
Software Build”

Smoke Testing
Smoke Testing is a software testing technique performed post software build to verify that
the critical functionalities of software are working fine. It is executed before any detailed
functional or regression tests are executed. The main purpose of smoke testing is to reject a
software application with defects so that QA team does not waste time testing broken
software application.

In Smoke Testing, the test cases chose to cover the most important functionality or
component of the system. The objective is not to perform exhaustive testing, but to verify
that the critical functionalities of the system are working fine.

For Example, a typical smoke test would be – Verify that the application launches
successfully, Check that the GUI is responsive … etc.

KEY DIFFERENCE

Smoke Testing has a goal to verify “stability” whereas Sanity Testing has a goal to
verify “rationality”.
Smoke Testing is done by both developers or testers whereas Sanity Testing is done
by testers.
Smoke Testing verifies the critical functionalities of the system whereas Sanity
Testing verifies the new functionality like bug fixes.
Smoke testing is a subset of acceptance testing whereas Sanity testing is a subset of
Regression Testing.
Smoke testing is documented or scripted whereas Sanity testing isn’t.
Smoke testing verifies the entire system from end to end whereas Sanity Testing
verifies only a particular component.

https://www.guru99.com/smoke-sanity-testing.html 2/6
10/27/21, 11:00 PM Sanity Testing Vs Smoke Testing: Introduction and Differences

What is Sanity Testing?


Sanity testing is a kind of Software Testing performed after receiving a software build, with
minor changes in code, or functionality, to ascertain that the bugs have been fixed and no
further issues are introduced due to these changes. The goal is to determine that the
proposed functionality works roughly as expected. If sanity test fails, the build is rejected to
save the time and costs involved in a more rigorous testing.

The objective is “not” to verify thoroughly the new functionality but to determine that the
developer has applied some rationality (sanity) while producing the software. For instance, if
your scientific calculator gives the result of 2 + 2 =5! Then, there is no point testing the
advanced functionalities like sin 30 + cos 50.

Smoke Testing Vs Sanity Testing – Key Differences


Following is the difference between Sanity and Smoke testing:

Smoke Testing Sanity Testing

Smoke Testing is performed to ascertain


Sanity Testing is done to check the new
that the critical functionalities of the
functionality/bugs have been fixed
program is working fine

The objective of this testing is to verify the The objective of the testing is to verify the
“stability” of the system in order to proceed “rationality” of the system in order to
with more rigorous testing proceed with more rigorous testing

This testing is performed by the developers Sanity testing in software testing is usually
or testers performed by testers

Smoke testing is usually documented or Sanity testing is usually not documented


scripted and is unscripted

Smoke testing is a subset of Acceptance Sanity testing is a subset of Regression


testing Testing

Smoke testing exercises the entire system Sanity testing exercises only the particular
https://www.guru99.com/smoke-sanity-testing.html 3/6

You might also like