gooamoko
gooamoko

Reputation: 658

How to make different Hibernate configuration for tests?

I have JSF Application with Hibernate. I use Tomcat connection pool in hibernate.cfg.xml

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="dialect">org.hibernate.dialect.PostgreSQL9Dialect</property>
        <!-- using Tomcat connections -->
    <property name="connection.datasource">java:/comp/env/jdbc/netstat</property>    
    <!-- Parameters for Hibernate connection provider
    <property name="connection.driver_class">org.postgresql.Driver</property>
        <property name="connection.url">jdbc:postgresql://localhost:5432/netstat</property>
        <property name="connection.username">netstat</property>
        <property name="connection.password">netstat</property>
    -->

        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

        <!-- configuration pool via c3p0 -->
    <!--
        <property name="c3p0.min_size">5</property>
        <property name="c3p0.max_size">100</property>
        <property name="c3p0.max_statements">200</property>
        <property name="c3p0.timeout">600</property>
    -->

        <property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
        <property name="current_session_context_class">thread</property>
        <property name="hibernate.show_sql">false</property>
        <property name="hibernate.hbm2ddl.auto">update</property>
        <!-- Mapping classes -->
        <mapping class="ru.gooamoko.model.Group" />
        <mapping class="ru.gooamoko.model.Host" />
        <mapping class="ru.gooamoko.model.Traffic" />
        <mapping class="ru.gooamoko.model.DailyTraffic" />

    </session-factory>
</hibernate-configuration>

Project can be build with maven with all tests skipped and runs normal. But for tests souch Hibernate configuration is not applicable.

Is any way for this case to specify different configuration file for JUnit tests?

Best regards.

Upvotes: 2

Views: 2010

Answers (1)

Jigar Joshi
Jigar Joshi

Reputation: 240860

put the test file in src/test/resources and that will take precedence in classpath while executing tests

Upvotes: 5

Related Questions