У меня есть трехуровневое приложение, находящееся в разработке, и создаю интеграционные тесты для DAO в уровне сохранения. Когда приложение запускается в Websphere или JBoss, я ожидаю использовать пул соединений и диспетчер транзакций этих серверов приложений. Когда приложение запускается в Tomcat или Jetty, мы будем использовать C3P0 для объединения и Atomicos для транзакций.Следует ли проводить тестирование интеграции DAO на сервере приложений?
В связи с этими различными подсистемами, должны ли DAO быть протестированы в полностью настроенной среде сервера приложений или должны ли мы справиться с этими проблемами при интеграции тестирования уровня обслуживания? В настоящее время мы планируем создать простой источник данных JDBC с не-JTA (то есть ресурсами-локальными) транзакциями для тестирования интеграции DAO, поэтому не задействован сервер приложений ... но это оставляет мне интересно об экологических проблемах, которые мы не будем раскрывать ,
Off темы может быть, но я был на поиске способа использования транзакций (для «Unit Testing» моих DAO, вне контейнера, но с базой данных - простым JDBC соединение), и было бы полезно, если бы вы могли подробно рассказать о том, как использовать транзакцию без сервера приложений. – dchucks
@dchucks. Я создал контекст приложения весеннего теста и настроил собственный (JPG) основатель JPA для использования Hibernate и инструментария управления транзакциями Atomicos. Если вы хотите получить более подробную информацию, откройте здесь вопрос и ссылку на него. – HDave