Smoke
testing being one of the quick and dirty software testing methodologies, needs
to be optimized. This article focuses on the need of optimizing the smoke tests
and how to optimize them.
Let us first see the scenario behind the need for
optimization of the smoke tests that are carried out on the software system or
application.
- In most cases of the development of software systems or
applications, the code can be executed either directly from the command prompt or
via a sub- routine of the larger software systems or applications. This is
called the command prompt approach.
- The code is designed in such a way that it has
the qualities like self awareness as well as it is autonomous.
- By the code being
self aware, we mean that if anything goes wrong during the execution, the code
should explain it.
- Commonly two types of problems are encountered during
testing and have been mentioned below:
- The path was compiled with
too much of optimization and
- The data directory is not
pointed out properly by the path.
Steps for Optimization of Smoke tests
- In
order to confirm that the code was compiled correctly one should run the test
suite properly at least once.
- The first step towards optimization of the smoke
test is to run it and then examine the output.
- There are two possibilities that
either the code will pass the test or it won’t.
- If it is the second case then
there are two possibilities that where your smoke test went wrong:
- Compiler bugs and errors or
- The path has not been set
properly.
Compiler Bugs and Errors
Let
us take up the first possibility, i.e., the compiler bugs and errors.
- It is
probable that the correct code might not have been produced by the compiler.
- In
some cases of the serious compiler bugs, it is possible that there might be
some hardware exception and these kinds of errors are caused mainly by the
compiler bugs.
- In this case the optimization level of the code should be
minimized.
- After this the code should be recompiled and observed again.
- Optimizing is good for code but if it is of aggressive kind then it will definitely
cause problems.
If path is not set properly
- It is obvious that if the code is not able to
trace its data files then it will definitely show up some error and this
happens because the path has not been set properly.
- In such cases you need to
check which path was it, fix it and recompile the whole code and execute once
again.
When does a system or an application crash?
Don’t
think that the software system or application crashes only when there has
aggressive optimization of the code!
- Crashes also happens with those programs in
which there is no optimization of the code.
- But in such cases, only compiler errors
can be blamed since it happens only if the compiler has not been set up
properly on your system.
- If no program executes, it means that your compiler is
broken and you need to talk about this to your system administrator.
How to optimize smoke tests?
- A lot of help comes from MPGO
(managed profile guided optimization).
- The best way to optimize any kind of
testing is to maintain a balance between the automated and manual testing.
- You
need to run MPGO tool along with the necessary parameters for the test and then
run the test. The test now will be optimized.
- It is actually the internal
binaries that are optimized either fully or partially.
- Partially optimized
binaries are deployed only in automated smoke testing.
No comments:
Post a Comment