Thursday, April 7, 2011

Thursday, February 24, 2011

Hybrid Test Automation Framework

Hybrid Test Automation

The most commonly implemented framework is a best combination of all the techniques. It combines Keyword Driven, modular, Library and Data Driven frameworks. Hybrid Testing Framework allows data driven scripts to take advantage of the powerful libraries and utilities that usually accompany a keyword driven architecture. The framework utilities can make the data driven scripts more compact and less prone to failure. Tests are fully scripted in a Hybrid Testing Framework thus increasing the automation effort. Hybrid Testing Framework also implements extensive error and unexpected windows handling. It is used for automation of medium to large applications with long shelf life. 

Advantages:

§   Fastest and less costly way to develop the automation scripts due to higher code re- usability

§    Utilizing a modular design, and using files or records to both input and verify data, reduces redundancy and duplication of effort in creating automated test scripts
 
Disadvantages:

§    No reporting mechanism to maintain reports for test results, error logs
§    No separate function libraries for common code and business logic code

Data Driven Framework

Data-Driven Framework 

Data-driven testing is a framework where test input and output values are read from data files (data pools, ODBC sources, CSV files, Excel files, DAO objects, ADO objects etc.) and are loaded into variables in captured or manually coded scripts. In this framework, variables are used for both input values and output verification values. Navigation through the program, reading of the data files, and logging of test status information are all coded in the test script.

This is similar to table-driven testing where test case is contained in the data file and not in the script; the script is just a "driver," or delivery mechanism, for the data. Unlike in table-driven testing, though, the navigation data isn't contained in the table structure, In data-driven testing, only test data is contained in the data files.
                  
Advantages:
§    Data sheets can be designed while application development is still in progress
§    Reduces data redundancy
§    Data input/output and expected results are stored as easily maintainable text records in    database
§    Changes to the Test Scripts do not affect the Test Data
§    Test Cases can be executed with multiple Sets of Data

Disadvantages:
§    Requires database proficiency
§ Maintenance of database is required