Data Driven Testing

What is meant by the Data Driven Testing (DDT)?

It is a kind of testing methodology where testing of the software product is carried out with the use of the defined sets of the specific inputs along with the sets of their corresponding and expected outputs. As the testing is driven by the available sets of the inputs, hence this technique is known as "Data Driven Testing".

Generally, the use of the DDT may be seen in the automated testing where the test input and its expected output is being retrieved from the specific data source such as data pool, excel files, ODBC sources, csv files, etc.

Necessity of Data Driven Testing

The necessity of the data driven testing, may be seen during the execution of the automated scripts where the recorded and pre-defined test scripts are used, to verify and validate the software working.

However, it might be possible that the specifically designed test scripts does not generate any sort of error with a particular software application, but it may not guarantee the same result with the other sets of inputs which are unknown and not covered under the range of the recorded test scripts. Keeping in account the situation, the tester may go for the expansion with respect to the automation script coverage by adding more test scripts. But, it will be a tedious job to design and create additional test scripts.

This situation, calls for the DDT approach for running the automated test scripts so as to have wide coverage. It provides the simple technique of creating a specific data source usually in the table format, having sets of input data along with their corresponding output values. The data source is dynamic which eases the task of further addition of the inputs and their expected outputs into it.

This approach benefits the tester to add more input data and desired outputs without any effort, dynamically to expand the coverage of the testing without interrupting the automation process.

Its methodology

The basic working of the DDT consists of the following activities in the subsequent manner.

  • Fetching the input data from the data source.
  • Entering the retrieved input data in the software application(form).
  • Comparison of the actual results with the expected output.
  • Testing progress further with another set of the input data.

Key Points

  • A specific testing approach, based on the sets of inputs and their corresponding and expected outputs.
  • Ensures wide coverage for the automation process.
  • Provides specific source of data with the recorded and pre-defined test scripts used for driving the test automation activity, which can be updated with the inclusion of the additional sets of inputs and outputs, effortlessly