A framework is an integrated system or an execution environment that sets the rules of Automation of a specific product.
The framework provides the basis of test automation and simplifies the automation effort.
This system integrates the function libraries, test data sources, object details and various reusable modules. These components act as small building blocks which need to be assembled to represent a business process.
There are various types of frameworks. They are categorized on the basis of the automation component they leverage. These are:
Data-driven testing :
Testing of application with multiple sets of data.The disadvatage with this framework is its Application dependent scripts.
Keyword-driven testing :
Keyword-driven testing: In Keyword Driven Framework every keyword represents some code which will perform certain action on the application.We create the excel file in which we provide the steps in simple english words (Keywords) by the user.
Advantage:The advantages for automated tests are the reusability and therefore ease of maintenance of tests that have been created at a high level of abstraction.
Disadvantage: Even for small actions in test Data file we need to write multiple lines to achieve the functionality.
Action Driven framework:
It takes the advantages for the Data Driven and Keyword Driven framework and automates thte application.Every Action here means a specific script which will perform only certain action provided the data in test data file.In RealTime people often call this Hybrid testing.
Hybrid testing :
The hybrid Test Automation Framework is what most frameworks evolve into over time and multiple projects. The most successful automation frameworks generally accommodate both Keyword-driven testing as well as Data-driven testing. This allows data driven scripts to take advantage of the powerful libraries and utilities that usually accompany a keyword driven architecture