Generating test data and importing into a data target
As you might expect from the name, the TestData Adapter is designed for creating static, dynamic and random test data. Unlike all the other Adapters, the TestData Adapter can only be used on the READ side. Whatever data target (WRITE Adapter) you need to generate test data for, the configuring of the TestData Adapter is always the same. You need spare no thoughts for where the generated data will end up, because FlowHeater takes care of it all for you. For example, you could experiment by initially exporting test data using the TextFile Adapter into a text file (CSV, TXT, ASC, ASCII). Once you are satisfied, you could then simply exchange the WRITE Adapter with any of the other Adapters available, such as the import into an SQL Server database.
This is how the Configurator popup window for the TestData Adapter first appears when you open it. The only parameter under the general tab is the number of records (rows or lines) that is to be generated.
Warning: If you set this to generate a large number of test records (e.g. over 100,000) then be sure to select the Mass Data Mode when you execute the Definition. Using the Memory Mode will create all the records in the main memory of your computer and because there is no theoretical limit to virtual memory size, if it gets extremely large the operating system will be under such pressure your computer may not respond for some time.
Fields / Data types tab
Under this tab you can insert new fields, configure the generation of static or random data and revise the sequence of existing fields. When you click the "New" button, a new field is added to the end of the fields list. By default the new field is assigned Data Type of STRING and the Random Value Type property is set to "None" (as circled in red).
The following "Random Value Type" properties may be selected
|None||No random data is created, the field always contains the static content that is entered as the "Default Value".
|Number||Random numbers are created that fall within the range specified in "from/to". When this option initially selected, the Data Type is amended from STRING to INT (integer). If you want to generate numbers with decimal fractions you must amend the Data Type to either DECIMAL or CURRENCY.
|String||Random strings are created (sequences of characters) of fixed or variable lengths. You can also define a list of the characters that may be randomly chosen.
|DateTime||Randomly generated dates and times. You can choose whether to only generate dates, only times or dates and times together. A range of values to define the period to be randomly chosen is also configurable.
|List||Random values are chosen from a specified list of possible values. Note that this list can be as long as you wish.
An additional, checkbox labeled Unique is offered when you select the random value options of number, string, or date/time. If you check this you tell the TestData Adapter to ensure that only unique random values are generated. For example, should you want to generate a list of random telephone numbers that are not repeated then you need to check this option.
Warning: In order to prevent an endless loop when the range of possible values is restricted, a maximum of 10 attempts is made to locate an alternative random value that is unique. When no unique value can be determined, then the field is assigned the specified default value instead.
Adapter settings in the Format tab
- Creating 1000 test records in CSV format
- Creating 1000 test records with dynamic conversion
- Creating 1000 test records as a text file with fixed column widths
- Generating mass test data for an MS Access database table