Generally an application has to be tested with manifold complement of data.
For example, a simple login screen, which depends on the user kind, will give dissimilar rights for different users.
So if you are an admin you will have complete rights.
If you are an ordinary user you will have limited rights and support if you have just read-only support rights.
In this case the software testing steps are identical. The only difference is the dissimilar user passwords and ids.
During data-driven testing inputs to the system are read from data files such as Excel, ODBC, comma separated values and so on.
So the values are read from such sources and after this software testing steps are performed by automated testing.