Skip to main content

Data-Driven Testing

Data-driven testing separates test logic from test data, running the same test script repeatedly against different sets of input values pulled from an external source — a spreadsheet, CSV, or database. It lets one script cover many scenarios without duplicating the test code for each one.

Instead of writing ten near-identical automated tests for ten different login scenarios, data-driven testing writes one test script and feeds it ten rows of data — valid credentials, wrong password, locked account, and so on — with the script parameterized to read from whichever row it's currently running.

The main benefit is maintainability: adding a new test scenario often means adding a new row of data, not writing new test code. Most modern test frameworks (PyTest, TestNG, Playwright Test) support this natively through parameterized tests or data providers.

Data-Driven Testing — Definition, Example & How It's Used | QA Bash Glossary | QA Bash