Definition :
A test automation framework is
a set of assumptions, concepts and tools that provide support for automated software testing. An Automation Framework is a set of
guidelines that you can follow during test case scripting to achieve successful
automation results and high return on investment.
Guidelines in creating the automation framework:
1. Select the tool to be used for test automation
2. Select type of automation framework to be implemented in the
automation based on project complexity and the tool.
3. Define folder structure to be used for Object repositories, function
libraries, test script, test data and other artifacts to be used for
interaction.
4. Validate proper interaction between various resources used in the
framework.
5. Define a driver script to execute test in batches.
6. Define proper test results reporting to be used in automation.
7. Define proper error handling and recovery scenarios to be implemented.
8. Validate functions are created with proper coding standards and ensure
high reusability in the framework.
Salient Features
Salient features of good
automation framework are as follows:
- High reusability of automation framework. Functions, structure used in framework should be reusable and easy to implement during script preparation.
- Maintenance of the framework should be easy and easy to understand for new user.
- Framework should ensure minimum effort from end user during script execution.
- Test Results should be self explanatory.
- Framework should be be able to run scripts smoothly without any issues and proper error handling should be defined in framework.
- Automation Framework should be robust with good exceptional handling.
- Automation Framework should be reliable.
- Automation framework should be application independent.
- Return on investment should be high in long run for automation. Framework should be choosen and created in such a manner to ensure high ROI.
Types of Automation Framework
Following are the types of
Automation Frameworks.
1. Linear Framework:
Linear scripts are created with steps written in a linear manner.
Steps are recorded in this framework using record- play mechanism. This
framework does not require any automation expertise as steps are recorded by
record and play method. This is useful
for stable application with only a few tests with the same set of data as data
is hard coded in this method.
2. Modular or function decomposition Framework:
In this approach
test scripts are first analyzed to find
out the reusable flows. Steps for these flows are grouped together to create
functions. Still test data is hard coded in this framework although reusability
is improved.
3. Data Driven Framework:
In Data driven framework data is stored in external files in the
form of excel file, text files, database. Test data interacts with code through
the external file. Since data is stored in an external file, test can be run
with multiple set of data without any change in the code.
4. Keyword Driven Framework:
In Keyword Driven
Framework we
create a set of Keywords & Data Tables, the entire functionality of
application gets captured as step by step instructions for every test. We create different keywords and associate
different actions with these keywords in this framework. Once framework is
prepared, it is much easier to implement using keywords defined.
5. Hybrid Framework:
This framework is created by combining different features of different
frameworks and creating a framework with
required features of the framework discuss like creating reusable functions,
using data driven techniques and defining keywords all in the same framework.
6. BPT Framework:
Business process testing framework divides test
case flow into multiple Business Components. These business component are
reusable and can be used in different tests to create workflow and business
tests. This framework is maintained in quality center and requires QC to create
framework and execute.
No comments:
Post a Comment