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:
- Smoke test is scripted either as an automated test or a
manually written test.
- It is designed to focus on all the parts of the
application like a cursor can do.
- It is shallow.
- It is wide.
- Ensures the working of the most crucial functions of a
program.
- Ensures that the build is not broken.
- Verifies readiness of a build to be tested.
- It is not a substitute for actual functional test.
Advantages of Smoke Testing
Now let us chalk out the
advantages of the smoke testing:
- 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.
- If the smoke test has been designed properly, it can
detect errors and problems at an early stage.
- Since the smoke test detects the majority of the
problems at an early stage, much time and efforts are saved.
- With smoke testing, the risk of low quality is reduced.
- With the daily smoke tests, the quality problems can be
prevented from taking the control of the project.
- 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:
Post a Comment