The name is interesting in itself. Ever wondered why smoke testing?
Well, the term 'smoke testing' originates from hardware testing technique. In hardware testing, a newly prepared hardware circuit is tested to check if it sets ablaze for the first time it is powered on. If the hardware does not catch fire, it conveys that the hardware has passed the test, else if we encounter smoke or fire during that test session it means the circuit is not fit for any further progress. Hence the term smoke testing.
So talking about smoke testing in the context of software applications, the purpose of such a test process is to ensure whether the application already under test, is efficient enough to pass through further levels of testing. Test cases are prepared to carry out the preliminary litmus tests on an application before passing it on for further testing.
Smoke Testing Checklist:
The first step is to create system and acceptance tests.
Begin with the acceptance test creation process by determining the test team for carrying out the tests.
Draft a work plan and devise a relevant test approach for the same.
Prepare documentation for the procedures adopted in the environment used, including backup and recovery plans.
As and when the phase of test preparation is over, begin with system testing.
Implement the test scripts and compare actual and expected results to find out deviations, if any.
Identify if there is any issues with the document. Prepare a report for the same mentioning the problems.
Prepare a maintenance phase.
After the problems are fixed, test cases should again be executed to ascertain that the same issues are repeated again.
After the complete set of activities are over, prepare a final test report listing the bugs that have been caught throughout.
A smoke test is essential in order to prevent occurrence of any defects/failures in next consecutive steps. Smoke test lessens the burden of test engineers from getting trapped in any unforeseen circumstance.