DEFINITION
Smoke testing is a type of software testing that comprises of a non-exhaustive set of tests that aim at ensuring that the most important functions work. The testing covers most of the functions of the software but none of them in depth. The result of this test is used to decide whether to proceed with further testing or not. If the smoke test passes, go ahead with further testing. If it fails, halt further tests and ask for a new build with the required fixes. If an application is badly broken, detailed testing might be a waste of time and effort.
Smoke test helps in exposing integration and major problems early in the cycle.
Smoke testing can be conducted on both newly created software and enhanced software.
Smoke test is performed manually or with the help of automation tools/scripts.

The term ‘smoke testing’, it is said, came to software testing from a similar type of hardware testing, in which the device passed the test if it did not catch fire (or smoked) the first time it was turned on.
As and when an application becomes mature, with addition of more functionalities etc, the smoke test needs to be made more expansive. Sometimes, it takes just one incorrect character in the code to render an entire application useless.
EXAMPLE
A build is generated for a desktop application with the fixes 1, 2 and 3. Smoke test is run that includes the following:
- Basic Installation
- Function 1 and 2 of Module A
- Function 1 of Module B
- Function 5 of Module D
If any of the items mentioned above fails, the build is rejected. The verification of the fixes 1, 2 and 3, and regression test is done only after the smoke test passes.
LEVELS APPLICABLE TO
Smoke testing is normally used in Integration, System and Acceptance Testing Levels. The tests can be run by developers as well as testers or clients. For instance, the developers can run a smoke test before providing a build to testers. Or, the testers can run a smoke test before accepting a build for further testing.
Smoke testing assesses the level of stability. :-)
0 comments:
Post a Comment