Hi, didnt follow whole thread i m afraid my understanding is that you want to use 2 diffeerent datasources for your app r u using Spring at all? coul dyou not configure a datasource for production and a datasource for test?
hth marco On 10/27/07, Victor Cardona <[EMAIL PROTECTED]> wrote: > > jimpo wrote: > > Using application server -specified datasources is out of the question > right > > now unfortunately. Database connection details are configured inside the > web > > application. > > > > It surprises me if Maven would not make it easy to use a different > database > > configuration for the tests and a different one for the created > application. > > This would basically make the dbUnit plugin pretty pointless, wouldn't > it? > > If you are creating a release of your application, you want the release > to > > point to a production db, but you still want the unit tests to be done > > against a unit test db populated with dbUnit. > > > > (not getting into whether such unit tests are really true "unit" > tests...I > > need them regardless of the term) > > > > > > Arnaud Bailly wrote: > >> jimpo <[EMAIL PROTECTED]> writes: > >> > >>> I am using Maven2 to build my war packet. Base maven configuration is > >>> created > >>> with Appfuse http://appfuse.org/display/APF/Home. > >>> > >>> When I do a mvn install (or mvn cargo:deploy), first a test phase > >>> executes, > >>> and then the final war is built and installed in the repository (or > >>> deployed > >>> to my app server). > >>> > >>> I want to run the tests against a different db than which the final > >>> package > >>> uses. So far I have not figured out how to do this. Test phase uses > the > >>> same > >>> database as the final application. > >>> > >>> I figured out how to use profiles to switch between different > databases. > >>> I > >>> can switch to test profile with, say, mvn test -Ptestdatabase. I could > of > >>> course use mvn test -Ptestdatabase to test and then separate command > mvn > >>> install -Dmaven.test.skip -Prealdatabase for creating the packet (and > >>> skipping tests), but that's not very nice. I want to be able to issue > one > >>> command which does both phases, tests and packaging. > >>> > >>> I am guessing maybe the solution would be something like activating > >>> profile > >>> X for the tests phase, and then activating a different profile Y for > the > >>> actual build. How could I accomplish this? > >>> > >> Hello, > >> I do not think possible right now to activate different profiles for > >> different phases in the same run. And I do not think this is > >> desirable. Maybe, if you are in a J2EE Container, you could use > >> different data sources parameters in test and production ? AFAIK, data > >> source configuration is independent of the applicaiont and configured > >> in the container, so you could use a test configuration, say with > >> hsqldb or derby in test, and another configuration in productoin. In > >> your webapp, data source reference will stay the same. > >> > >> HTH > >> -- > >> OQube < software engineering \ génie logiciel > > >> Arnaud Bailly, Dr. > >> \web> http://www.oqube.com > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > >> For additional commands, e-mail: [EMAIL PROTECTED] > >> > >> > >> > > > > I'm not familiar with Appfuse, so excuse my uninformed question. How > are you configuring your datasource in your webapp? I'm guessing that > you have the connection properties in a file somewhere similar to > tomcat's context.xml. If so, can't you just add a similar file to your > testing resources directory that would then configure the application > with the test database information? > > Victor > > >
