Test automation

Test automation
AUtomation

Tuesday, July 1, 2008

Difference Between Smoke Testing and Sanity Testing

There are two types of test types, Smoke and Sanity. What they are exactly? Here we go.....The general definition (related to Hardware) of Smoke Testing is: Smoke testing is a safe harmless procedure of blowing smoke into parts of the sewer and drain lines to detect sources of unwanted leaks and sources of sewer odors.It is related to s/w, the definition is Smoke testing is non-exhaustive software testing, ascertaining that the most crucial functions of a program work, but not bothering with finer details. 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. Smoke Testing and Sanity Testing In greater details... Smoke Test: When a build is received, a smoke test is run to ascertain if the build is stable and it can be considered for further testing. Smoke testing can be done for testing the stability of any interim build. Smoke testing can be executed for platform qualification tests. Sanity testing: Once a new build is obtained with minor revisions, instead of doing a through regression, sanity is performed so as to ascertain the build has indeed rectified the issues and no further issue has been introduced by the fixes. Its generally a subset of regression testing and a group of test cases are executed that are related with the changes made to the app.Generally, when multiple cycles of testing are executed, sanity testing may be done during the later cycles after through regression cycles. Difference between Smoke Testing and Sanity Testing:
· 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 is 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 will be conducted to ensure whether the most crucial functions of a program work, 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.








Technology blogs

1 comment:

Unknown said...

Hi,

How r u?
i know the little bit if automation testing i have interested in QTP and automation.please guide me.In which way to learn QTP?