Xenonstack Recommends

What is Sanity Testing, Techniques and Tools

Acknowledging Data Management
          Best Practices with DataOps


What is Sanity Testing?

Sanity Testing follows a broad and narrow approach with detailed testing of some limited features. It is mainly non-scripted. It is a subset of Regression Testing. It is a type of testing to prove that software application is working as per requirements as mentioned in the specified documents. It checks whether the application is built according to user needs. It is used to check after making minor changes to a part of the code; the application is still working as per the requirements of the user. To know more about Sanity Testing,

How Does Sanity Testing Work?

This is executed at an end in the process of a software development Lifecycle. It helps to check whether added new functionality is working according to requirements or not. If a newly added functionality is not working according to requirement then in that case, Sanity testing fails. If a newly added functionality to a system and web application is working according to a requirement then in that case Sanity test passes. When Sanity test passes then complete system testing carried out to check that newly added functionally to an application will not affect previously present components of system and application.

Benefits of Sanity Testing

  • It helps to avoid wastage of time.
  • It helps to save cost in testing even if the build failed.
  • In this type of testing, the tester directly rejects build upon failure.

Why Sanity Testing Matters?

Basically, after completion of a Regression testing, this testing comes into practice. This testing executed to check that the defect fixes and changes made to software not breaking the functionality of the software. It is the narrow and deep approach to testing, therefore focuses on limited and main features of testing.

How to Adopt Sanity Testing?

Whenever tester receives a software build with minor issues fixes in code or functionality, Sanity Testing carried. Then it is checked whether bugs reported in a previous build fixed or not. There can be a regression introduced due to these fixes. So the main aim of this testing is to check that the planned functionality is working as per expectations. This way helps to execute Sanity testing instead of doing a whole regression testing. Why this testing has to be adapted or conditions where this testing is required - The big releases generally planned and executed in a proper and systematic format. But sometimes, small releases asked to be delivered as soon as possible. In such situations teams didn't get much time to first document the test cases, then execute them, do the documentation for the bugs and finally do the regression and follow the whole process. Here for such situations some things required to keep in mind. These things which are required explained as follows -
  • Perform Dev-QA Testing.
  • Whatever bugs found, report these bugs.
  • If there is a requirement to do a Performance Testing or Stress or Load testing, have a proper automation framework. The process behind this it is nearly impossible to test these things using a sanity test manually.
This a most important and last part of this testing strategy - While drafting the release email or the document mention the in the following way-
  • Contains all the executed test cases.
  • Bugs found with a status marker.
  • If anything left untested mention this point with reasons.

Best Practises

  • This type of testing executed after the addition of new functionality to a system.
  • This type of testing carried out once new functionality implemented within a system.
  • To adopt this type of testing would be useless if there is not any new functionality added to a system.

Sanity Testing Tools

There is no way around to do sanity testing with the help of any tool. It is to check that after making changes to a part of the software, software working as per requirements. In this only functionality is checked, by just analyzing its behavior.  

Compressive Approach

Sanity testing is a subset of regression testing and this testing is used for software testing to perform some basic tests. To execute this testing in an appropriate way, we recommend taking the following steps. Learn more about " Regression Testing" Get an insight about " Shift Testing"  

Related blogs and Articles

Overview of Beta Testing | Strategy | Types


Overview of Beta Testing | Strategy | Types

Introduction to Beta Testing Beta testing is one of the types of user acceptance testing in which the development team delivers the completed product to the users to evaluate its actual performance. Beta Testing is performed by the end-users of the software application in the real-world environment. It is the last stage of the testing process when the product is about to release.