Creating test data in a database

database, integration-testing

Solution

Where I work we use RedGate Data Generator to generate test data.

Since we work in the banking domain. When we have to work with nominative data (Credit card numbers, personnal ID, phone numbers) we developed an application that can mask these database fields so we can work with them as real data.

I can say with Redgate you can get close to what your real data can look like on a production server since you can customize every field of every table in your BD.

Problem

I'm aware of some of the test data generators out there, but most seem to just fill name and address style databases [feel free to correct me]. We have a large integrated and normalised application - e.g. invoices have part numbers linked to stocking tables, customer numbers linked to customer tables, change logs linked to audit information, etc which are obviously difficult to fill randomly. Currently we obfuscate real life data to get test data (but not very well). What tools\methods do you use to create large volumes of data to test with?

Original source