Интеграционное тестирование Jpa Persistence.xml - PullRequest
0 голосов
/ 13 сентября 2011

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

Я в основном копирую файл persistence.xml и помещаю его в src / test / resources и пытаюсь

@Before
public void beginTransaction() {
  emf = Persistence.createEntityManagerFactory(dao-test");
  em = emf.createEntityManager();
}

@ Test public void testAccountDonation () {

    AccountResult result = AccountService.getDonationAmount();
    Assert.assertEquals("Success", result.getResultCode());


}

Не удалось установить соединение для класса драйвера "oracle.jdbc.driver.OracleDriver" и URL-адреса "jdbc: oracle: thin: @ data-arctichome.arcww2.com: 1521: orclgdb1". Возможно, вы указали неверный URL.

Вот моя единица постоянства.

<persistence-unit name="dao-test"
    transaction-type="RESOURCE_LOCAL">

    <properties>
        <property name="openjpa.ConnectionDriverName"
            value="oracle.jdbc.driver.OracleDriver" />


        <property name="openjpa.ConnectionURL"
            value="jdbc:oracle:thin:@xxxxxxxxx:orclgdb1" />
        <property name="openjpa.ConnectionUserName" value="xxxxxx" />
        <property name="openjpa.ConnectionPassword"
            value="xxxxxx" />
    </properties>
</persistence-unit>

Спасибо.

Ответы [ 2 ]

0 голосов
/ 20 марта 2012

Spring предлагает множество справок для модульного и интеграционного тестирования , например, для управления контекстами приложений и транзакциями в интеграционных тестах, вместо того, чтобы пытаться создавать все персистентность и т.д. тесты в коде, я бы посоветовал вам прочитать главу о тестировании (и, возможно, поискать несколько примеров в сети) и использовать функциональные возможности, предоставляемые Spring. В конечном итоге это сэкономит вам массу времени и усилий.

0 голосов
/ 20 марта 2012

Я все еще очень плохо знаком с JPA, GlassFish и т. Д., Но в вашем случае мне интересно, где вы запускаете базу данных. Для встроенных приложений, я думаю, вам нужно запустить его в коде, нет? Просто мысли вслух ...

...