Подтвердить что ты не робот

Создание тестовых данных в базе данных

Я знаю о некоторых генераторах тестовых данных, но большинство, похоже, просто заполняют базы данных имен и адресов (не стесняйтесь исправлять меня).

У нас есть большое интегрированное и нормализованное приложение - например, счета-фактуры имеют номера деталей, связанные с таблицами столов, номерами клиентов, связанными с таблицами клиентов, журналами изменений, связанными с аудиторской информацией и т.д., которые, очевидно, трудно заполнить случайно. В настоящее время мы затуманиваем данные реальной жизни, чтобы получить тестовые данные (но не очень хорошо).

Какие инструменты\методы используются для создания больших объемов данных для тестирования?

4b9b3361

Ответ 1

Где я работаю, мы используем RedGate Data Generator для генерации тестовых данных.

Так как мы работаем в банковской сфере. Когда нам приходится работать с номинативными данными (номера кредитных карт, персональный идентификатор, номера телефонов), мы разработали приложение, которое может маскировать эти поля базы данных, чтобы мы могли работать с ними как реальные данные.

Я могу сказать, что с Redgate вы можете приблизиться к тому, что ваши реальные данные могут выглядеть на производственном сервере, поскольку вы можете настраивать каждое поле каждой таблицы в своем BD.

Ответ 2

Вы можете создавать планы данных с помощью VSTS Database Edition (с последними инструментами Power Power 2008).

Он включает в себя мастер создания данных, который позволяет автоматизировать создание данных, указывая на существующую базу данных, чтобы получить что-то реалистичное, но содержит совершенно разные данные.

Ответ 3

Я развернул свой собственный генератор данных, который генерирует случайные данные, соответствующие регулярным выражениям. Основная идея состоит в том, чтобы дважды использовать правила проверки. Сначала вы используете их для генерации достоверных случайных данных, а затем используете их для проверки нового ввода в производство. Я сказал переписать утилиту, поскольку это похоже на хороший учебный проект. Он доступен в googlecode.

Ответ 4

Я только что завершил проект, создающий 3,500,000+ страховых полисов. Из-за ограничений HIPPA и PHI использование чистых реальных данных - это PITA. Для этого я использовал инструмент Datatect (http://www.datatect.com/).

Некоторые из вещей, которые мне нравятся в этом инструменте:

  • Использует ODBC, чтобы вы могли генерировать данные в любой источник данных ODBC. Я использовал это для баз данных Oracle, SQL и MS Access, плоских файлов и таблиц Excel.
  • Расширяемый через VBScript. Вы можете писать крючки в различных частях рабочего процесса генерации данных, чтобы расширить возможности инструмента. Я использовал эту функцию для "синхронизации" зависимых столбцов в базе данных и для управления частотным распределением значений для согласования с реально наблюдаемыми частотами.
  • Сознательно. При заполнении столбцов внешнего ключа вытягивает действительные ключи из родительской таблицы.

Ответ 5

Продукт Red Gate хорош... но не идеален.

Я обнаружил, что лучше сделал, когда написал свои собственные инструменты для генерации данных. Я использую его, когда хочу генерировать "Клиенты"... но это не здорово, если вы хотите имитировать случайность, с которой клиенты могут участвовать, например, при создании заказов... некоторые с одним элементом с несколькими элементами.

Инструменты Homegrown обеспечат самые "реалистичные" данные, которые я думаю.