Стратегия тестирования базовых модулей базы данных: усечение таблиц между модульными тестами и данными испытаний - PullRequest
1 голос
/ 02 февраля 2012

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

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

Программа в основном выполняет некоторые запросы к двум заполненным таблицам, обрабатывает результаты, а затем записывает эти результаты в две таблицы, которые являются пустыми при выполнении программы. Есть ряд методов, которые читают и пишут в БД. Я хотел бы проверить это.

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

Кроме того, таблицы, содержащие данные, вероятно, будут создаваться при запуске сценария SQL каждый раз, когда разработчик устанавливает тестовую среду. Есть ли лучший способ сделать это? Может ли это быть автоматизировано? Там будет довольно много данных, поэтому мне не очень хочется вручную создавать наборы данных XML для каждой таблицы.

Я использую базу данных Oracle.

Большое спасибо за любые советы / предложения, которые вы можете предложить.

1 Ответ

2 голосов
/ 02 февраля 2012

Попробуйте использовать в своих тестах инфраструктуру DBUnit . Это расширение JUnit и предоставляет необходимую вам функциональность. Настройка может быть довольно сложной, но после настройки она работает как шарм.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...