“How to plan test automation?” is perhaps the most frequently
asked question of today’s software testing field. Another important question
is, “can test automation improve test effectiveness?”
In this article we have
tried our level best to answer both of these questions!
What is meant by Test Automation?
- In
test automation, we actually develop a quick process that will take care of the
execution of the tests by itself i.e., without any human intervention.
- It also
compares the actual and predicted outcomes, sets up the pre- conditions for the
tests.
- A common test automation process involves automation of a manual testing
process that makes use of a formalized testing tool.
- Although the manual
testing can discover a whole lot of defects in the software system or
application, it is quite laborious or you can say it involves a lot of drudgery
and time.
- It is not possible for you to discover defects of all the
classes using manual testing; it is a task that can only be accomplished using
test automation.
- Test automation takes time only once i.e., while you automate
them and after this it saves a whole lot of time when compared to manual
testing, tests can be run quickly and repeatedly.
How to plan test automation?
There are two approaches to test automation and both of them are equally good
and either of them can be followed. They are:
1. Code driven testing: This approach involves public interfaces
to classes, libraries or modules to be tested with a whole variety of the input
arguments for the validation of the results that are returned and are quite
correct.
2. Graphical user interface testing: This approach involves a testing frame work that generates a user interface events
like mouse clicks and key strokes for the validation of the observable
behavior of the program i.e., whether it is correct or not?
There is one drawback which is that the test automation tools
can cost you much and they cannot be employed without manual testing. Test
automation is effective if you have to repeatedly test one thing.
There is one
more approach to the test automation which is commonly known as “model based
testing”.
- Using this approach you automatically generate tests through the use
of a model of the software system or application for the generation of test
case but this method of planning test automation is still under research and
controversies.
- One should keep the following questions in mind while planning
the test automation:
1. What to automate?
2. When to automate?
3. Whether or not automation is really required?
Can Test Automation improve Test Effectiveness?
Yes, test automation can improve test effectiveness.
- The test cases generated
by test automation are quite reliable as compared to those created by manual
testing.
- In test automation, human error is eliminated.
- The tests generated
are repeatable as well as programmable.
- They also have the following
characteristics:
* Reusable
* Comprehensive: The test suite that is built covers all the
features of the software system or application.
* Cost reduction: Due to less resources, used cost is also
reduced.
* Fast: Testing is quite fast.
* Better quality software: The resultant software system or
application is of better quality since it is tested by a large number of tests
with fewer resources and less time.
No comments:
Post a Comment