Let’s see What is Data Driven Framework in Selenium and how can you design Data Driven Framework in Selenium. Selenium Webdriver Data-Driven Framework is the framework where We read the test input values are from external data files (ODBC sources, CVS files, Excel files, and DAO objects). Load them into the variables in our script and use as per need.
Data Driven Framework in Selenium
Data Driven Framework allows you to run a test case multiple times with different input and validation values. As Selenium Webdriver is an API so you will have to put in some effort to support data driven testing in your Selenium tests.
We will use Microsoft Excel as the format for storing Input Data Values in our framework. In this Data Driven framework, variables are used for both the input values and output verification values.
The framework should include navigation through the program, reading of the data files, and logging of test status and information. All the processes should be in the test scripts. The framework should have the following features:
- Well defined architectural design.
- Less time to test large data.
- Script execution in multiple environments.
- Easier, faster, and efficient analysis of result logs.
- Communication of results.
- Easy debugging and script maintenance.
- Robust and stable due to error and exception handling.
- 100% reliability of utility scripts, online execution and report packages.
Framework Architecture Design
Automation architecture package should include:
- Config – Keeps all the configuration files such as property files.
- InputTestData – has files containing input data for the application.
- OutputData – Contains downloaded documentations, images, fetched data in excel.
- TestReports – Contains ANT/XLST generated reports.
- Util package – Should contain all generic functions & business functions such as email configuration settings and all other utilities.
- TestLogs-Contain log file corresponding to tests.
- DAO – Classes for accessing persistent storage, such as to a database.
- Pages – Page classes for particular pages.