Как мне выполнить автоматическое тестирование SQL ETL Scripts & SPROCs? - PullRequest
7 голосов
/ 13 января 2012

У нас есть несколько пакетов DTSX, которые извлекают-преобразовывают-загружают данные из ряда устаревших баз данных с расширенными возможностями -> SQL Server 2k8 R2. (через ODBC)

Большинство наших сценариев T-SQL процесса ETL

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

То, что мы хотели бы сделать, - это внедрить некоторый процесс для автоматизации тестирования этих SPROCS / Scripts, которые выполняют эти преобразования.

Что мы придумали сами, так это:

  • Иметь какой-либо известный источник данных (размещенный в локальной распространяемой базе данных)
  • Запустите пакеты DTSX, чтобы сгенерировать вывод
  • Получите ожидаемый и заранее созданный вывод в другом месте в SQL Server.
  • Напишите наши собственные сценарии проверки, чтобы сравнить ожидаемое с фактическим.

Просто интересно, есть ли какие-нибудь другие приложения для процессов / систем / db-тестирования, которые мы также должны рассмотреть.

Ответы [ 2 ]

3 голосов
/ 13 января 2012

Взгляните на tSQLt - инфраструктуру модульного тестирования базы данных для SQL Server Это делает написание надежных тестов довольно простым.

Он (пока) не позволяет тестировать сценарии, но вы можете включить их в хранимые процедуры.

0 голосов
/ 23 сентября 2013

Устаревшие базы данных всегда сложные.

Я бы посоветовал вам взглянуть на этот пост: http://quality -gates.com /? P = 1284 , где я расскажу, каковы основные тесты, которые необходимо выполнить для проверки Процесс ETL на разных уровнях: операционный, Datawarehouse и др.

Мы решили использовать Quality Gates в нашем проекте. Поскольку он не является частью ETL, он делает проверку чистой и объективной. мне кажется, что вы ищете.

...