
Smoke and Sanity testing are the most misunderstood topics in Software Testing. There is a lot of literature on this topic, but most of them may confuse many of you. And sometimes even follow the work does not care what it is while in the process of doing it has gone through it.
This article, will help you to solve this problem.
The diagram below will help you somewhat better understand the main difference between Smoke test and Sanity test.

To evaluate the above diagram, let’s first find out.
What is Software Build?
If you are developing a simple computer program that includes only one source code file, you can simply compile and link this one file to create an executable. A typical software project consists of hundreds or even thousands of source code documents. Creating an executable program from these file sources is a complex and time consuming task. You need to use “build” software to create an executable and the process is called “Software Build“
Table of Contents
What is a smoke test?
Smoke test is a type of Software Testing performed after building the software to confirm that the important functions of the program are working properly.
It is done “before” any functional or detailed testing done on the software build. The goal is to reject a severely broken application, so it won’t take long for the QA team to install and test the software application.
In smoke testing, test cases are selected that cover the most important function or component of the system. The goal is not to perform exhaustive testing but to verify that critical system functions are working properly.
A good example of a smoke test would be – Verify that the application runs successfully, Check if the GUI is responsive… etc.
What is a sanity test?
Sanity testing is a type of Software Testing that is performed after receiving a software build, with minor changes to the code or functionality, to determine that the bugs are fixed and there are no other problems. occurred due to these changes.
The purpose is to determine that the proposed functionality works as expected. If the accuracy check fails, the build will be rejected to save the time and cost associated with more rigorous testing.
The goal is “not” to thoroughly verify new functionality, but to determine that the developer applied some sanity while producing the software. For example, if your scientific calculator says 2 + 2 = 5! Then it doesn’t help to test advanced functions like sin 30 + cos 50.
Points to note for Smoke and Sanity Testing
- Smoke and sanity testing are both ways to avoid wasting time and trying to quickly determine if an application is eligible for the next stages.
- Sanity testing is also known as Acceptance testing.
- Smoke testing performed on a build tool may also be known as a build verification test.
- One of the best practices is the daily build progress and smoke testing in software projects.
- Both smoke and sanity tests can be performed manually or using an automation tool. When automated tools are used, the tests are usually kicked off by the same build process.
- As required by testing, you may have to perform both Sanity and Smoke Tests on the software build. In such cases, you will do Smoke tests first and then progress to Sanity testing. In the industry, Sanity test cases for friendliness are often combined with smoke testing, to speed up testing. Therefore, it is common for the terms to be confused and used interchangeably.
Thank you for reading , for more article about manual testing, please go to link https://testerpath.com/category/manual-testing/