Как протестировать отображения JPA2 в проекте Java EE? - PullRequest
2 голосов
/ 30 января 2012

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

Итак, каково общее мнение / лучшие рекомендации по тестированию написанных вручную JPA-отображений через аннотации?

Ответы [ 2 ]

5 голосов
/ 30 января 2012

Если вы используете Hibernate, вы можете установить следующее в вашем persistence.xml файле:

<property name="hibernate.hbm2ddl.auto" value="validate" />

, чтобы Hibernate проверил существующую схему, но NOT внесите любые измененияна схему.Это быстрый способ проверить, действительны ли ваши сопоставления для вашей БД.

4 голосов
/ 30 января 2012

Я успешно использовал OpenEJB для тестирования сопоставления сущностей в приложении на основе EJB. У него есть замечательная функция отката транзакций, поэтому каждый модульный тест независим (посмотрите на «откат транзакции» в примерах OpenEJB).

Как правило, я думаю, что наилучшей практикой является тестирование отображений в БД в базе данных в памяти (например, в hsql) и откат изменений в конце каждого теста. Вы также можете взглянуть на проект DBUnit .

...