Subscribe by Email

Wednesday, June 20, 2012

What are the advantages of smoke testing?

Smoke testing is one of the quick and dirty tests that we have in the software testing fields because of which the major functions of the software system or applications can be worked out without bothering about the finer details of the code and implementation. 

When and how smoke testing is performed?

- Smoke testing is basically performed when the software system or application is thought to be absolutely new.
- After the build is received, it is run and here the smoke testing comes in to play and involves checking whether the build is stable or not.
- A smoke test is not a singular test but rather a series of tests that are carried out on the software system or application before the actual full scale testing of the application is commenced.
- It would not be wrong if you say that the smoke testing is type of non- exhaustive test. 
Furthermore, in some cases the smoke testing also plays the part of the acceptance test that is run prior to the introduction of a new build to the main structure of the software system or application and before the regression or integration process.

In this article we will be discussing about the advantages of the smoke test but before this let us see what all are its characteristics:
  1. Smoke test is scripted either as an automated test or a manually written test.
  2. It is designed to focus on all the parts of the application like a cursor can do.
  3. It is shallow.
  4. It is wide.
  5. Ensures the working of the most crucial functions of a program.
  6. Ensures that the build is not broken.
  7. Verifies readiness of a build to be tested.
  8. It is not a substitute for actual functional test.

Advantages of Smoke Testing

Now let us chalk out the advantages of the smoke testing:

  1. Carrying out smoke testing at various stages reduces the problem of integration. The risk of integration is minimised. Most of the teams fear facing this risk that a project in which they have to integrate or combine code up on which they have been working individually and it may not work well. At this stage only the incompatibility of the software system is discovered. If the integration takes place earlier than smoke testing then the debugging process will take a lot of time and may require re- implementation and re- designing of the whole system. In most of the cases, projects have been cancelled due to errors during the integration. With the daily smoke tests, the integration errors can be reduced and runaway integration problems can be prevented.
  2. If the smoke test has been designed properly, it can detect errors and problems at an early stage.
  3. Since the smoke test detects the majority of the problems at an early stage, much time and efforts are saved.
  4. With smoke testing, the risk of low quality is reduced.
  5. With the daily smoke tests, the quality problems can be prevented from taking the control of the project.
  6. The smoke test can uncover major problems and defects as a consequence of wrong configuration.
Basically what happens in smoke testing is that the whole system is exercised from end to end and those errors and problems are stressed that cause the functioning of the whole system to stop. The smoke test is not so exhaustive but it does expose out major problems of the software system or application under test. The smoke testing at all stages ensures the working of the major functionality and keeps a check on the stability of the build. 

No comments:

Facebook activity