anand iyer
TRANSCRIPT
DDE: Data Drive EngineAnand [email protected]
The “test” data problem
• “Test” data for all test types = functional, non-functional, test automation.
• Well-formed and consistent data.
• Maximum Utilization (Execution & Validation)
• Reusable data
• Customizable process
• Consider different testing perspectives = positive and negative
Challenges to address
• Synthesize or Extract?
• High volume requirement.
• Data integrity (rules)
• Randomness of data.
• Realistic
• Multi-language support
• Referential constraints
Core ideas in the solution
• Independent rules specifications.
• Built-in and/or user-defined functions.
• Use of references to generate data.
• Multi-language data generation.
• Synthesize/extract data from common sources.
• Multiple providers and receivers (presently experimental)
Implementation - The salient points.
• Simple-to-use interface, independent of the core engine.
• Easy to create rule definitions.
• Easy setup and configuration.
• Pre-processor support.
• References can be used as keywords or provide data input, in order to build constraints or intricate flow definitions.
• Support for forward and backward references.
Salient points (contd)
• Single tool to generate data for performance, Test automation and functional flows.
• Test-data for positive and negative scenarios/workflows.
• Export data from external systems, to excel spreadsheets.
• UDF creation using Python.
• Use of proprietary language, that support concept of variables, conditionals, loops.
Salient points (contd)
• Support for basic data-structures, including lists and dictionaries.
• Allows inline evaluation of basic python functions using eval function.
• XEGER support for data creation based on specific patterns.
• Fetch external data feeds, including JSON-based GET web services.
• Extraction of data from HTML pages using XPATH.
• Scan file-system for data about files/folders.
Essentials of tool usage
• Sleek interface
• Independent rule specifications (Text template)
• Demo templates with the distribution
• Usage videos here and here
• Help documentation with FAQ
• Free download
• Open-source framework