An automation framework is nothing but an integrated rigorously structured system capable of establishing a set of rules for the test automation of a software product. Automation testing mainly supplements manual testing and makes the whole testing process more efficient.
A test automation framework is an integrated system that sets the rules of automation of a specific product. 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. The framework provides the basis of test automation and simplifies the automation effort.
The main advantage of a framework of assumptions, concepts and tools that provide support for automated software testing is the low cost for maintenance. If there is change to any test case, then only the test case file needs to be updated and the driver Script and startup script will remain the same. Ideally, there is no need to update the scripts in case of changes to the application.
Choosing the right framework/scripting technique helps in maintaining lower costs. The costs associated with test scripting are due to development and maintenance efforts. The approach of scripting used during test automation has effect on costs.
Various framework/scripting techniques are generally used:
1. Data-driven (data is persisted outside of tests in a database, spreadsheet, or other mechanism)
3. Hybrid (two or more of the patterns above are used)
4. Agile automation framework
The Testing framework is responsible for:
1. Defining the format in which to express expectations
2. Creating a mechanism to hook into or drive the application under test
3. Executing the tests
4. Reporting results
Advantage of Framework
- Re-usability of code
- Maximum coverage
- Recovery scenario
- Low cost maintenance
- Minimal manual intervention
- Easy Reporting
Comments & Suggestions are welcome