Despite of hundreds of web articles
on Smoke and sanity testing, many people still have confusion between these
terms and keep on asking to me. Here is a simple and understandable difference
that can clear your confusion between
smoke testing and sanity testing.
Smoke Testing
Smoke testing is non-exhaustive software testing, ascertaining that the
most crucial functions of a program work, but not bothering with finer details.
Or
Software Testing done
to ensure that whether the build can be accepted for through software testing
or not. Basically, it is done to check the stability of the build received for
software testing.
Sanity Testing
Sanity testing is a
cursory testing; it is performed whenever a cursory testing is sufficient to
prove the application is functioning according to specifications. This level of
testing is a subset of regression testing. It normally includes a set of core
tests of basic GUI functionality to demonstrate connectivity to the database,
application servers, printers, etc.
Or
After receiving a
build with minor changes in the code or functionality, a subset of regression
test cases are executed that to check whether it rectified the software bugs or
issues and no other software bug is introduced by the changes. Sometimes, when
multiple cycles of regression testing are executed, sanity testing of the
software can be done at later cycles after through regression test cycles. If
we are moving a build from staging / testing server to production server,
sanity testing of the software application can be done to check that whether
the build is sane enough to move to further at production server or not.
Smoke vs. Sanity Testing
Smoke vs. Sanity Testing
Smoke Testing
|
Sanity Testing
|
Smoke testing is a wide approach where all areas of the software
application are tested without getting into too deep.
|
Sanity testing is a narrow regression testing with a focus on
one or a small set of areas of functionality of the software application.
|
The
test cases for smoke testing of the software can be either manual or
automated.
|
A sanity test is generally without test scripts or test cases.
|
Smoke testing is done to ensure whether the main functions of
the software application are working or not. During smoke testing of the
software, we do not go into finer details.
|
Sanity testing is a cursory software testing type. It is done
whenever a quick round of software testing can prove that the software
application is functioning according to business / functional requirements.
|
Smoke testing of the software application is done to check
whether the build can be accepted for through software testing.
|
Sanity testing of the software is to ensure whether the
requirements are met or not.
|
Smoke testing originated in the hardware testing practice of
turning on a new piece of hardware for the first time and considering it a
success if it does not catch fire and smoke. In software industry, smoke
testing is a shallow and wide approach whereby all areas of the application
without getting into too deep, is tested.
|
A sanity test is a narrow regression test that focuses on one or
a few areas of functionality. Sanity testing is usually narrow and deep.
|
A smoke test is scripted, either using a written set of tests or
an automated test
|
A sanity test is usually unscripted.
|
A Smoke test is designed to touch every part of the application
in a cursory way. It’s shallow and wide.
|
A Sanity test is used to determine a small section of the
application is still working after a minor change.
|
Smoke testing is conducted to ensure whether the most crucial
functions of a program are working, but not bothering with finer details.
(Such as build verification).
|
Sanity testing is a cursory testing, it is performed whenever a
cursory testing is sufficient to prove the application is functioning
according to specifications. This level of testing is a subset of regression
testing.
|
Smoke testing is normal health check up to a build of an
application before taking it to testing in depth.
|
Sanity testing is to verify whether requirements are met or not,
checking all features breadth-first.
|
No comments:
Post a Comment