what is sanity testing?

Software Testing provides a vital role in software development and release. There are different types of software testing each of them has a unique purpose for the software development process. Sanity testing is one of the most useful tests among them.

What is Sanity Testing?

It is a kind of Software Testing to ensure the bugs are fixed and not have further issues due to the changes. It is a type of retesting to ascertain the changes or newly added functionalities work as expected. The process of sanity testing is not about detailed testing, it is to validate the functionality of the application. It is generally used for critical bug fixes. It is performed to ensure the working of new code modifications. The aim is not to verify the critical features of the application but is to validate whether the bugs are fixed or not. It usually performs after receiving a minor fix.

on-demand software testing pricing

Features of Sanity Testing

  1. It performs non-scripted
  2. It offers a quick testing
  3. It should be done without test cases
  4. It delivers high project value due to the testing of very basic and normal functionality
  5. It requires less time-consuming cause it is not about detailed testing
  6. It is usually a speedy evaluation
  7. It covers limited functionalities in depth
  8. It performs after regression testing
  9. Future references of sanity testing are not available as it is non-scripted
  10. It performs only on modified or defective functions
  11. It is not automated, performed manually only
  12. It was done by the testers

It is a kind of regression testing with a focus on a few impacted functionalities only.

How to do Sanity Testing?

It will be carried out whenever the tester receives a software build with minor issue fixes in code or functionality.

It is performed after successful regression testing. It doesn’t have any rules to carry out tests.

We should identify the functionalities along with the modifications introduced in the code at first. Next, verify the implemented functionalities working as expected specifications. Then the tester should randomly test and ensure all the functionalities and changes working fine.

After successful sanity testing, the system can be passed for thorough testing.

Example of Sanity Testing

Imagine a scenario of an application you have with multiple modules. You have a login page form that allows the user to enter the data and login in. Now there is a new requirement from the user which is to add the “Forgot Password” button in the login page that enables him to find or create his password again.

The development team applies the requirement and sends the application for sanity testing. At first, you have to perform basic tests on the newly added feature “Forgot Password”. Then you have to check the newly added feature doesn’t affect the existing features, i.e., check if the other functionalities and features of the login page are still working fine.

If the application finds no issues, it can be subject to further testing. If it is not, the application should be rejected.

Benefits of Sanity Testing

  1. It is very convenient because it detects errors in the early stages
  2. No scripting and documentation is needed
  3. It is less time consuming
  4. Simple to execute
  5. Simple to understand
  6. It is used when a project goes through some major modifications.
  7. Helps in quickly identifying issues in core functionality
  8. Sanity testing gives the current state of software quickly
  9. It gives them the confidence to release software as it is narrow and deep testing of few areas of functionality

Smoke Vs Sanity Testing

Read the difference between smoke vs sanity testing:
sanity vs smoke testing diff

Conclusion:

In Simple, Sanity testing is a checkpoint to determine if further testing can proceed or not.  It determines that the required functionalities work roughly as expected. Although testers use sanity testing as a decision criterion for accepting or rejecting the software. Sanity testing is important because it saves time if any issue is identified by checking it quickly.

In a nutshell, the main aim of sanity testing is to assure the functionality of the software even after many iterations of regression are carried out. Thus, it increases the confidence to release software.

Read Also:

What is Smoke Testing?