What is Sanity Testing? The Fundamentals
The objective of Software Testing is not only to ensure the quality of the end product, but also to reduce the time consumed and cost incurred in the completion of the project. There are different types of Software Testing and the question of what is Smoke Testing and Sanity Testing is quite a debatable topic within tech circles. The objective aimed at as well as the functionality and complexity of the software, help in determining the type of testing opted for.
In this blog, we shall
consider the question of what is Sanity Testing; understand its benefits and
utility; as well as consider the question of what is Sanity Testing in Software
Testing in terms of its features and examples.
What
is Sanity Testing?
What
is Smoke Testing and Sanity Testing?
Features
of Sanity Testing
What
is Sanity Testing with Example?
Benefits
of Sanity Testing
Conclusion
What
is Sanity Testing?
A software project
comprises of numerous source code files. Given so, the process of creating an
executable program from the same can be a laborious task. However, it can be
carried out with the help of ‘build’ software, whereby the process is referred
to as ‘Software Build’.
In order to understand what is Sanity Testing in Software Testing, one should look at it as a variant of Regression Testing. Whenever, the testing team receives a new Software Build, after minor changes in its functionality or code; Sanity Testing is performed in order to ensure that the bugs have been fixed, all errors have been addressed and there is no addition of new defects.
Sanity Testing can be
looked at as a broad, quick and shallow Software Testing Course Certification technique, which helps
in determining the viability of further testing. It does not involve detailed
testing and helps to validate the functionality of an application. Thus, quite
often Sanity tests are undocumented and non-scripted and merely touch upon the
important parts and bits. Hence, Sanity Testing is critical in ensuring that
the new code changes do not affect the existing functionalities.
What
is Smoke Testing and Sanity Testing?
In the aftermath of a
Software Build, Smoke Testing is performed in order to ensure the seamless
working of the core functionalities of a software application. It is undertaken
even before detailed Regression or Functional Testing begins. The primary
objective is to determine the viability of further testing, by testifying that
the critical functionalities are working fine. To the extent that both Smoke and
Sanity Testing help in determining the reasonableness of further testing; they
are often referred to as substitutes. However, the former helps in testing the
existing core functionalities; while the latter tests the new and added
functionalities like bug fixes.
Additionally, as you
seek to understand what is Smoke Testing and Sanity Testing, you should
remember that Smoke Testing is a variant of Acceptance Testing, whose goal is
to verify stability; whereas Sanity Testing is a variant of Regression Testing,
whose goal is to verify rationality.
Features
of Sanity Testing
- Ø Sanity
Testing is conducted near the end of a test cycle after thorough Regression
Testing has been completed.
- Ø They
are usually undocumented and non-scripted.
- Ø They
are undertaken by testers and can be regarded as filters which determine the
feasibility of the passage of the builds onto the next level of testing.
- Ø It adopts a narrow and deep approach to testing which focuses upon limited functionalities.
Ø They are usually not automated and are executed manually.
- Ø Since
Sanity Testing checks the functioning of an application after minor changes
have been made to the code, they are referred to as cursory testing.
What is Sanity Testing with Example
By way of simple
instances, you will surely be able to understand what is Sanity Testing in a
better manner.
Example 1:
You have designed a
simple web application. This application would surely have multiple modules for
different functionalities. Now suppose, in case of the signup module, you have
incorporated the Captcha API and you find out that there is some issue with the
same. In order to fix the issue, you will try to introduce certain
modifications to the code. However, after doing so, it is nearly futile to test
all the modules of the applications once again, just in order to confirm that
the amended functionality is working as expected. In such a situation,
conducting a Sanity Test can help in checking the signup module alone; thus saving
cost and time.
Example 2:
You have designed
another application comprising of multiple pages like the login page, user
profile page, new user creation page and so on. On the new user creation page,
you have a registration form which allows users to enter their information and
click on the submit button. Now, you wish to add a Preview option by which
users will be able to view their filled application, before submitting the
same. After the necessary addition is made by the development team, it will be
important to ensure that the new added functionality is working just as fine.
However, once again, it will be futile to test all the modules of the
application. Conducting Sanity Test can be useful in testing the newly added
feature without disturbing those which have already been tested.
Benefits
of Sanity Testing
- Ø Sanity
Testing is cost effective as compared to other types of testing.
- Ø It
is easily comprehensible and executable and yet efficient.
- Ø It
does not require prior documentation or scripting.
- Ø Having
a narrow and deep approach and being focused only on few functionalities;
Sanity Testing helps save testing time and effort.
- Ø It
provides for the detection of bugs and defects in the early stages of software
development itself.
- Ø It
helps to point out any compilation or deployment issues.
Conclusion
By the end of this
blog, I am pretty sure that you must have developed a fair idea about what is
Sanity Testing. The notions of Smoke and Sanity Testing and are often confused
with each other and hence it is important to understand what is Smoke Testing
and Sanity Testing in terms of their differences. It is clear that Syntax Technologies provides for quick assessment and is usually resorted to when a new
functionality is added or a modification request is carried out.
Comments