Data driven testing runs the same test logic with different input data sets. Keyword driven testing builds tests from reusable action keywords like "click," "type," and "verify." Both are automation framework patterns that sit on top of your page object model and test infrastructure.
What is datadriven testing?
Data driven testing separates your test logic from your test data. You write the test script once, then feed it different data sets from an external source like a CSV file, an Excel spreadsheet, or a database. The same test runs multiple times with different inputs.
Here's a simple example. You have a login test. Instead of writing five separate tests for valid credentials, invalid password, empty username, special characters, and a locked account, you write one test and drive it with a data table:
One test script, five data rows, five test executions. The data driven framework keeps the logic constant and varies the inputs.
On mobile, data driven test automation works the same way it does on web. Tools like TestNG (with @DataProvider), JUnit (with @ParameterizedTest), and Appium all support data driven approaches. The test data can include device-specific values like screen dimensions, OS versions, or locale settings.
Data driven testing is best when you need to validate the same flow with many input combinations. Registration forms, search filters, payment methods, and locale specific formatting are good candidates.
What is keyword driven testing?
Keyword driven testing abstracts test actions into reusable keywords. Each keyword maps to a function that performs a specific action: "Click," "EnterText," "VerifyVisible," "SwipeLeft." Testers build test cases by assembling keywords in sequence without writing code.
A keyword driven test for the same login flow might look like this:
The keyword driven framework maps each keyword to an underlying function. "Click" maps to a function that finds an element by its locator and taps it. "VerifyVisible" maps to a function that checks whether an element is present on screen.
The keyword driven testing framework makes tests readable by non-technical team members. A product manager can look at the keyword table and understand what the test does. QA engineers who don't write code can assemble test cases from the keyword library.
On mobile, keyword driven test frameworks (sometimes called a keyword-driven testing framework) are built on top of Appium, Espresso, or XCUITest. The keywords abstract the framework syntax, but they still depend on element locators underneath. "Click LoginButton" only works if the framework can find "LoginButton" by its selector.
How do data-driven and keyword-driven testing compare?
The core difference: data-driven testing varies the data while keeping actions constant. Keyword-driven testing varies the actions while keeping the approach standardized.
The last row is what matters most for mobile teams. Data-driven testing is relatively low-risk because changing test data doesn't require touching the UI layer. Keyword-driven testing carries the same selector risk as any other UI automation approach. When the UI changes, keyword functions that rely on selectors break.
What is a hybrid testing framework?
A hybrid testing framework combines data-driven and keyword-driven approaches. Tests use keywords for actions and external data sources for inputs. This gives you keyword reusability and data flexibility in the same framework.
In practice, a hybrid test for login might look like this:
The hybrid automation framework pulls action logic from the keyword library and input values from the data file. This is the most flexible pattern for teams that need both data variation and action abstraction.
A hybrid test framework is also the most complex to build and maintain. You need the keyword library, the data infrastructure, the mapping layer between them, and the selector-based page objects underneath. On mobile, this means three layers of code that all need maintenance when the UI changes.
Why keyword libraries still break on mobile
Every keyword driven framework, whether basic or hybrid, maps keywords to functions that find elements on screen. Those functions use selectors. When a developer changes the UI, the selectors in those functions break.
Here's the pattern that plays out on mobile teams using keyword driven testing:
- SDETs build a keyword library with 40 to 60 keywords mapped to Appium or Espresso functions
- QA testers assemble 150 tests from those keywords
- Tests run green for two weeks
- Frontend ships a redesign that changes 10 element IDs
- 8 keywords break because their underlying selectors are invalid
- 50 tests that use those 8 keywords fail
- SDETs spend a sprint fixing keyword functions instead of building new ones
The keyword based testing approach makes the fix localized (update the keyword function, not every test), but the frequency of fixes on mobile is the real problem. This is the same selector fragility issue that affects POM-based and raw-script testing. Keywords organize the problem. They don't eliminate it.
How plain English testing supersedes both approaches
Plain English testing combines the readability of keywords with the simplicity of data-driven testing, without the selector dependency that makes both approaches fragile on mobile.
With Drizz, the same login test looks like this:
Tap on "Username" field
Type "user@test.com"
Tap on "Password" field
Type "pass123"
Tap on "Log In"
Validate "Welcome" is visible
This reads like a keyword driven test, but there's no keyword library to maintain. Drizz uses Vision AI to find elements visually on screen. "Log In" isn't mapped to a selector. Drizz sees the button the same way a human does.
For data-driven scenarios, you can parameterize the same test with different inputs through Drizz's test data management. One test, multiple data rows, no keyword functions, no selectors.
Plain English testing gives you what both frameworks promise (readability for non-technical team members, data-driven coverage, reusable test logic) without the maintenance overhead that makes traditional data driven and keyword driven frameworks expensive on mobile.
What does a real before-and-after look like?
A banking app team had a keyword driven framework built on Appium with 55 keywords and 200 tests. They also used data-driven testing for their transaction validation suite (12 test scripts driven by 300 data rows covering different amounts, currencies, and account types).
The keyword library worked well for six months. Then the app went through a redesign. 18 keywords broke. 120 tests failed. The team spent three sprints fixing keyword functions and re-validating data-driven test scripts.
After the redesign, they moved their 50 highest-priority tests to Drizz. Plain English tests, Vision AI execution, real devices. The remaining 150 tests stayed in the Appium keyword framework and are being migrated gradually.
The 50 Drizz tests now run nightly on 8 devices. Zero keyword maintenance. The data-driven transaction suite was rebuilt in Drizz with parameterized inputs in one sprint. The team's SDET time shifted from maintaining the keyword library to expanding test coverage.
How should you choose?
Use this decision framework:
For mobile teams starting fresh, building a keyword library or data driven test framework from scratch in 2026 is hard to justify. The setup cost is high, the maintenance is ongoing, and plain English tools like Drizz deliver the same readability and data-driven flexibility without the selector dependency.
For teams with existing frameworks, the practical path is to keep what works and migrate the tests that break most often to a vision-based tool.
FAQs
What is data driven testing?
Data-driven testing separates test logic from test data. You write the test once and run it with different input data sets from an external source (CSV, Excel, database). The same script validates multiple scenarios without code duplication. It's best for input validation, form testing, and boundary testing.
What is keyword-driven testing?
Keyword-driven testing builds tests from reusable action keywords like "Click," "EnterText," and "VerifyVisible." Each keyword maps to a function that performs the action. Non-technical testers can assemble tests by combining keywords without writing code. The keyword driven test approach is readable but depends on selectors underneath.
What is a hybrid testing framework?
A hybrid testing framework combines keyword-driven actions with data-driven inputs. Tests use keywords for steps and external data sources for values. It's the most flexible approach but also the most complex to build and maintain, requiring a keyword library, data infrastructure, and selector-based page objects.
Which is better for mobile, data driven or keyword driven testing?
Data-driven testing is lower-risk on mobile because changing data doesn't touch the UI layer. Keyword-driven testing carries higher risk because keywords map to selectors that break when the UI changes. For mobile teams, data-driven testing is the safer starting point. A hybrid or plain English approach is best for full coverage.
What is a data driven framework vs keyword driven framework?
A data driven framework stores test data externally and feeds it into test scripts at runtime. A keyword driven framework stores action definitions in a library and assembles tests from those actions. The data driven framework varies inputs. The keyword driven framework varies workflows. Both can be combined in a hybrid framework.
When should you skip both and use plain English testing?
Skip building a DDT or KDT framework from scratch when your UI changes frequently, your team doesn't have dedicated SDETs to maintain keyword libraries, or you're starting a new mobile automation effort. Plain English testing with Vision AI (like Drizz) delivers keyword-level readability and data-driven flexibility without selector dependencies.


