Test automation tools
allow executing test cases automatically (without or with minimal human
intervention). They help to automate tedious, routine operations. Such
tools are indispensable in concurrent, stress, load and reliability
testing and are a big help in regression testing.
Types of tools
A. UI automation tools (send
messages to the program thus emulating user activities with UI
controls). The best choice for system testing as it triggers whole
patch from the event created by user to the inner logic of application.
But be aware of: High buying cost; high script implementation cost;
relatively low reliability of scripts (every change in UI may break
scripts); painful handling of custom UI controls; they are often fall
behind new technologies (IE 7.0 for example).
B. Scripting languages (Perl,
Python, AWK etc.) are great for test data creation or automation of web
applications. They are strong in text data processing and are the best
choice for log analysis or string data generation.
C. Programming language (C++,
Java and the like) is the best choice for Unit testing. I could not
imagine what pain it would be to create a stub or a driver in another
language (if a unit is not built on a portable technology). Sometimes
it is easier to create system load and stress tests on the existing
components in the programming language the same that was used for
development.
D. Databases (SQLServer,
Oracle, DB2, MySQL, Access, Excel tables etc.) is what you need for
supporting data-driven testing or command-driven testing. This is also
helpful to have your tests results and logs saved into RDMS. It helps
to find, summarize and report results easy.
E. WMI (JavaScript or
Visual Basic) is the best choice for testing COM-based systems.
Instantiating and object in it is easy; scripts are quick and robust. I
strongly recommend learning it for testers working with COMs.
------------- MBA Examination papers
|