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
>
>
>

Reply via email to