Добрый день! Посоветуйте, пожалуйста, какие инструменты использовать для сравнения данных системы, состоящей из нескольких БД. Имеем 4 БД: (1) Sybase ASA, (2) Sybase ASE, (3) Oracle. Процесс по шагам (грубо):
1. В БД_1 укладываются данные из внешних файлов.
Далее последовательно запускается ряд хранимых процедур (на БД_1), выполняющих слеждующие действия:
2. Перегрузка (еще) данных БД_3 => БД_1.
3. Обсчет данных в БД_1.
4. Выгрузка данных в БД_2.
Необходимо отследить правильность обсчета данных и их выгрузку в БД_2. Входные данные (из БД_1 и БД_3) известны, выходные (выгружаемые в БД_2) - тоже. Чем сравнить, кроме SQL?

Несколько разных БД. Организация интеграционного тестирования.
Автор DNKDNK, 17 ноя 2010 12:11
Сообщений в теме: 4
#1
Отправлено 17 ноября 2010 - 12:11
#2
Отправлено 17 ноября 2010 - 13:27
Вот я бы даже вашем случае взял любой язык програмирования котором есть функции работы с перчисленными БД и написал бы цикл и в цикле сравнивал результаты запросов. Сделал бы тестовый набор данных и проверял бы результат выполнения. Вполне даже UNIT тест.
Вы ищите какой нибудь фреймворк где SELECT команда заменена кликом по кнопке "Получить данные"?
Вопроса не понял...
Других способов естесвенного получения данных из БД кроме SQL я не знаю.Чем сравнить, кроме SQL?
Вы ищите какой нибудь фреймворк где SELECT команда заменена кликом по кнопке "Получить данные"?
Вопроса не понял...
#3
Отправлено 17 ноября 2010 - 15:39
Да хоть дамп делать и делать diff (SQL Data Compare от red-gate если уж совсем хочется хорошего). Способов сравнить выходные данные с уже известным набором много. Или вопрос по самой процедуре?
#4
Отправлено 18 ноября 2010 - 09:08
В TOAD есть стандартный запрос сравнения схем, инстансов.
Не понял что такое обсчет?! Структура объектов в разных БД одинаковая?
Не понял что такое обсчет?! Структура объектов в разных БД одинаковая?
#5
Отправлено 19 ноября 2010 - 08:02
Схемы сравнивать не надо, только данные. Имеются эталоны входных данных (поступающих в БД_1) и эталон выходных данных (поступающих после пересчета ($ считаются и укладываются в структуры неких отчетов) в БД_2). Эталон выходных данных весьма условен - дампами не сравнить. Грубо говоря, в таблицу организаций данные могут лечь как [Организация_1, Организация_2, Организация_3], так и [Организация_3, Организация_2, Организация_1] и это не будет являться ошибкой. Главное чтобы в таблицу счетов, (master-detail с организациями) легли (порядок тоже не важен, главное наличие) правильные суммы по всем организациям.
Уточню вопрос. Нужен инструмент, в котором можно конфигурационными действиями указать какие данные с какими сравнивать, может быть выстраивая схему таблиц и их взаимосвязи. Инструмент должен уметь работать с Sybase ASA и Sybase ASE. В режиме сравнения данных (после конфигурирования), инструмент должен запускаться из командной строки и возвращать (куда-нибудь - код возврата процесса, запись в реестр, файл и т.п.) результат сравнения, который можно интерпретировать как Успех/Сбой + возможная расшифровка расхождения данных пересчета с эталонными.
Уточню вопрос. Нужен инструмент, в котором можно конфигурационными действиями указать какие данные с какими сравнивать, может быть выстраивая схему таблиц и их взаимосвязи. Инструмент должен уметь работать с Sybase ASA и Sybase ASE. В режиме сравнения данных (после конфигурирования), инструмент должен запускаться из командной строки и возвращать (куда-нибудь - код возврата процесса, запись в реестр, файл и т.п.) результат сравнения, который можно интерпретировать как Успех/Сбой + возможная расшифровка расхождения данных пересчета с эталонными.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных