У меня есть приложение с ок. 200 столов и ок. 20 java-серверов / пакетных программ.
У меня есть довольно хороший набор системных тестов.
Эти тесты JUnit являются тестами черного ящика, так как они отправляют транзакции через системные интерфейсы, а затем проверяют ожидаемое поведение через интерфейсы.
У меня также есть довольно хорошая настройка CI, при которой проверки запускают проверки типов компиляции, но я хочу расширить эти проверки, чтобы они соответствовали примерам модульных тестов.
Под случаями модульного тестирования я действительно имею в виду один java-сервер или пакетную программу плюс базу данных (фиктивные объекты будут иметь сомнительную ценность).
Половина работы уже выполнена: я могу использовать проверки из системного теста в модульных тестах, однако теперь основной вопрос, конечно, состоит в том, как привести базу данных в известное состояние во время модульных тестов.
Я искал DBUnit, чтобы помочь здесь, и функциональность набора данных / чистой вставки довольно крута.
Моя главная проблема сейчас заключается в том, есть ли способ получить список того, какие таблицы изменились между двумя точками?
Например, я запускаю набор системных тестов, который фокусируется на компоненте X. Какой самый простой способ определить, какие таблицы были добавлены / удалены / обновлены во время набора тестов?
Любые отзывы приветствуются
Питер