Tuesday, May 4, 2010

3–TIER TEST AUTOMATION FRAMEWORK


All the definitions and standards mentioned in this framework are existing one’s. I have not altered any definitions, but where ever possible I tried to explain them in simple words. The purpose of this document is to provide the reader with a clear understanding of what is actually required to successfully implement cost-effective automated testing. My intention of this framework is to help Test Engineers to understand the benefits of functional test automation, various techniques and apply them effectively in their daily work. I thank all the people who helped me gain knowledge on the automation framework.


Framework based test automation

By definition any automation framework should be independent of any Automated Testing Tool and the Application Under Test (AUT).

Framework based test automation ensures that the automated test suite is robust, easily maintainable and can be easily customized to suit the minor changes in the AUT. The use of function library makes it modular with reusable components.

Data Pool helps to parameterize the functional test data which facilitates execution of test scripts with different sets of data.













The above figure depicts the automation framework and its components:


Tier1: Tier 1 comprises elements like test management tool and application under test.

The AUT could be an Enterprise application, Client-Server application, SAP application etc.


Tier2: Tier 2 consists of the automation tool and its element like the driver script, which in turn calls the reusable function in the business logic layer. It has one more layer for error handling and reporting logic.

The main components of this tier are:

  • Error Handling Functions – Error handling functions are the basic components which take care of unexpected errors, warning, information messages during the execution of the test scenarios.
  • Reusable Functions – Reusable functions refer to the actions targeting the business logic and functional behavior of the application.
  • Driver Script – Perform initialization (if required), then calls the Controller Scripts in the desired order.

The automation tool could be Winrunner, QTP, Rational Robot, Test Complete, Silk Test etc.


Tier3: Tier 3 consists of file system and scripting standards.

  • File System: File system components include:
    • Objects RepositoryThis includes physical description of objects present on the application under test.
    • Library FileGeneral, Application-Specific, and Screen-Access Functions. Note that Functions can be called from any of the above script types.
    • Logs and Reports – This component stores results and logs errors (if any) during execution of scripts. Success/error messages logged into one text file.

Summary


Automated testing can be made to be cost-effective, however, if some common sense is applied to the process. Select a tool that will allow you to implement automated testing in a way that conforms to your long-term testing strategy:
* Choose a test tool that best fits the testing requirements of your organization or company.
* Realize that it doesn’t make sense to automate some tests. Overly complex tests are often more trouble than they are worth to automate. Concentrate on automating the majority of your tests, which are probably fairly straightforward.
* Only automate tests that are going to be repeated. One-time tests are not worth automating.