Download Link for your Favorite Presentation is at the End of this Page
Why Software Testing Experts use Test Execution Tools for Automation?
This type of software testing tools are known by different names like – test execution tools, or test running tools, or capture and replay tools, and is probably the most commonly known category of software testing tools.
These tools are primarily used for automation of regression testing. They can execute test scripts much faster and more reliably than human beings, and they can therefore reduce test execution time when tests are repeated and/or allow more tests to be executed.
All the test execution tools work according to the following basic principles, like:
1) Capture: A recording of all the tester�s manual actions and the system�s responses into a test script.
2) Control points: A number of checkpoints added to the script by the tester during the capture.
3) Playback: Automatic re-execution of the test script.
Test execution tools exist for graphical user interface, GUI, and for character-based interfaces. For GUI applications the tools are able to simulate the movement of mouse and click over buttons & are able to recognize the GUI objects like windows, buttons, fields & various different controls.
When a script has been captured once, it may be executed at any given time again. If the software under testing reacts differently from what was expected at the inserted checkpoints, the execution will report a failure. It is usually also possible to log information during execution.
Test scripts are captured in a specific scripting language. In newer versions of these tools it has become possible to get access to the scripts that have been captured. These are often in a C or Visual Basic like code, and this offers the possibility for editing the scripts, so that, for example, forgotten operations, further control points, or changed values, may be added.
Experience shows that if the scripts are written from scratch, rather than captured, and good and systematic development principles are used, the scripts will be more maintainable. More and more of these tools are therefore used as test execution tools of coded scripts, rather than capture/playback.
Advantage of Test Execution Tools: The advantages of this type of software testing tools are:
1) Lot of manual test execution can be done automatically. This is especially the case in iterative development and other development projects where a large number of regression testing are needed.
2) These tools are indispensable in development where “frequent build and smoke test” principles are used. Builds can be made in the evening, and automated test suites can be set to run overnight. Testing results will then be ready in the morning.
3) The use of test scripts requires good configuration management to keep track of which versions of the test objects, test data, and test scripts belong together. This becomes a blessing in disguise.
Drawbacks of Test Execution Tools: The pitfalls of this type of software testing tools are:
1) These tools tend to be expensive to establish and maintain the test scripts.
2) The requirements, specifications, and code undergo changes in the course of the development, especially in iterative development. This needs to be carefully considered in connection with the estimation of the continuous maintenance of the test scripts.
3) The work with the test scripts requires programming skills. If the necessary skills are not available, the use of test execution tools may be very cumbersome and inefficient.
A word of caution: It must be remembered that test scripts written by a programmer or tester are just like any other (software) product: made by humans and therefore not perfect. Defects are also introduced in test scripts, and test scripts should therefore be tested and corrected when defects are identified. The earlier this is done the better since fewer defects in the test scripts reduce the possible uncertainty as to whether a failure is caused by a defect in the test script or indeed in the product under test.
DownLoad Link for Presentation:
Different Types of System Tests (177 Kb)