Define infrastructure for testing with multiple DBMSes
------------------------------------------------------
Key: DNA-521
URL:
https://jira.jboss.org/jira/browse/DNA-521
Project: DNA
Issue Type: Task
Affects Versions: 0.6
Reporter: Randall Hauch
Assignee: Randall Hauch
Fix For: 0.7
We need to support easily testing the different aspects of DNA (primarily integration
testing, but including the JPA connector testing) on different DBMS systems. There are
several ways of doing this, but one seemingly attractive way is to define a Maven profile
for each DBMS to define the dependencies, custom repositories for drivers, and Maven
properties that define the database connection information. Each project can then be done
in a database-agnostic manner, where database-related information (e.g., connection
properties, driver names, etc.) can be placed in a property file within the project's
"/src/test/resources" area and defined in terms of the Maven properties. Then
the Maven build (or just test runs) can be executed by supplying the desired DBMS profile;
ideally, the normal build process would be completed, and then the tests can be run using
the different DBMS profiles.
The jBPM4 project defines the profiles in their parent POM [1], while the Hibernate
project defines them is their "testsuite" project's POM [2]. I actually
like how jBPM defines it in the parent POM, but I like how Hibernate's POM defines and
organizes their profiles. Also note Hibernate's use of one DBMS profile (currently
HSQLDB) as the default, meaning that all tests would normally pick that up. Also, an
example of a Hibernate test resource file that picks up the Maven properties is at [3].
[1]
https://anonsvn.jboss.org/repos/jbpm/jbpm4/trunk/pom.xml
[2]
https://anonsvn.jboss.org/repos/hibernate/core/trunk/testsuite/pom.xml
[3]
https://anonsvn.jboss.org/repos/hibernate/core/trunk/testsuite/src/test/r...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira