RE: [SUSPICIOUS] Re: Running integration tests twice against different webapp configurations

2018-10-12 Thread Ellis, Scott
Thank you Thomas! The parallel solution worked  or me. And thanks for the other 
replies too.

For the record, the second jetty instance must use the run-forked goal, because 
 the ShutdownMonitor thread in jetty is declared static. A design flaw in my 
opinion. Trying to run a second jetty instance in the same vm fails with error 
"ShutdownMonitor already started,"  even with a different key and port.

Thanks,
Scott

-Original Message-
From: Thomas Broyer [mailto:t.bro...@gmail.com] 
Sent: Friday, October 12, 2018 2:34 AM
To: Maven Users List 
Subject: [SUSPICIOUS] Re: Running integration tests twice against different 
webapp configurations

Alternatively, if possible, you could possibly run the app with both 
configurations in parallel (two executions of jetty-maven-plugin in 
pre-integration-test and post-integration-test phase, using different ports), 
and run you tests twice, for each app / port (two executions of failsafe at 
integration-test phase)

On Fri, Oct 12, 2018 at 8:44 AM Anders Hammar  wrote:

> I'd say you need two modules; one for each IT setup. Each module is a 
> Maven project and will then run the integration tests. The actual 
> integration test code could then be in a third module and you declare 
> a dependency on that artifact.
>
> /Anders
>
> On Thu, Oct 11, 2018 at 11:21 PM Ellis, Scott 
>  >
> wrote:
>
> > Hi,
> >
> > I have a project that builds a webapp and runs integration tests 
> > against it using the failsafe plugin and the jetty-maven-plugin.
> >
> > That is, I use the jetty-maven-plugin to start jetty in the 
> > pre-integration-test phase, run the tests, then shut jetty down in 
> > the post-integration-test phase.
> >
> > Now, my web app can have an entirely different configuration in 
> > addition to the existing one, so I need to start jetty with a new 
> > config and run a new suite of tests, while maintaining all the existing 
> > functionality.
> >
> > So what I really want to do it run these phases twice:
> >
> > pre-integration-test
> > integration-test
> > post-integration-test
> >
> > First I want to run them with the my webapp configured the old way, 
> > and then run the same phases again with my webapp configured the new way.
> >
> > Any advice on how to do this? The configurations can be set with 
> > system properties. The problem is how to run those phases twice in that 
> > order.
> >
> > Thanks for any insight you can offer, Scott
> >
>


Re: Running integration tests twice against different webapp configurations

2018-10-12 Thread Paul Hammant
There's Cuppa which is super cool and allows to control such things to a
very fine level.

https://github.com/cuppa-framework/cuppa/

It is not clear that Cuppa has multi-year life though. I wish it did.

On Thu, Oct 11, 2018 at 10:21 PM Ellis, Scott 
wrote:

> Hi,
>
> I have a project that builds a webapp and runs integration tests against
> it using the failsafe plugin and the jetty-maven-plugin.
>
> That is, I use the jetty-maven-plugin to start jetty in the
> pre-integration-test phase, run the tests, then shut jetty down in the
> post-integration-test phase.
>
> Now, my web app can have an entirely different configuration in addition
> to the existing one, so I need to start jetty with a new config and run a
> new suite of tests, while maintaining all the existing functionality.
>
> So what I really want to do it run these phases twice:
>
> pre-integration-test
> integration-test
> post-integration-test
>
> First I want to run them with the my webapp configured the old way, and
> then run the same phases again with my webapp configured the new way.
>
> Any advice on how to do this? The configurations can be set with system
> properties. The problem is how to run those phases twice in that order.
>
> Thanks for any insight you can offer,
> Scott
>


Re: Running integration tests twice against different webapp configurations

2018-10-12 Thread Thomas Broyer
Alternatively, if possible, you could possibly run the app with both
configurations in parallel (two executions of jetty-maven-plugin in
pre-integration-test and post-integration-test phase, using different
ports), and run you tests twice, for each app / port (two executions of
failsafe at integration-test phase)

On Fri, Oct 12, 2018 at 8:44 AM Anders Hammar  wrote:

> I'd say you need two modules; one for each IT setup. Each module is a Maven
> project and will then run the integration tests. The actual integration
> test code could then be in a third module and you declare a dependency on
> that artifact.
>
> /Anders
>
> On Thu, Oct 11, 2018 at 11:21 PM Ellis, Scott  >
> wrote:
>
> > Hi,
> >
> > I have a project that builds a webapp and runs integration tests against
> > it using the failsafe plugin and the jetty-maven-plugin.
> >
> > That is, I use the jetty-maven-plugin to start jetty in the
> > pre-integration-test phase, run the tests, then shut jetty down in the
> > post-integration-test phase.
> >
> > Now, my web app can have an entirely different configuration in addition
> > to the existing one, so I need to start jetty with a new config and run a
> > new suite of tests, while maintaining all the existing functionality.
> >
> > So what I really want to do it run these phases twice:
> >
> > pre-integration-test
> > integration-test
> > post-integration-test
> >
> > First I want to run them with the my webapp configured the old way, and
> > then run the same phases again with my webapp configured the new way.
> >
> > Any advice on how to do this? The configurations can be set with system
> > properties. The problem is how to run those phases twice in that order.
> >
> > Thanks for any insight you can offer,
> > Scott
> >
>


Re: Running integration tests twice against different webapp configurations

2018-10-12 Thread Anders Hammar
I'd say you need two modules; one for each IT setup. Each module is a Maven
project and will then run the integration tests. The actual integration
test code could then be in a third module and you declare a dependency on
that artifact.

/Anders

On Thu, Oct 11, 2018 at 11:21 PM Ellis, Scott 
wrote:

> Hi,
>
> I have a project that builds a webapp and runs integration tests against
> it using the failsafe plugin and the jetty-maven-plugin.
>
> That is, I use the jetty-maven-plugin to start jetty in the
> pre-integration-test phase, run the tests, then shut jetty down in the
> post-integration-test phase.
>
> Now, my web app can have an entirely different configuration in addition
> to the existing one, so I need to start jetty with a new config and run a
> new suite of tests, while maintaining all the existing functionality.
>
> So what I really want to do it run these phases twice:
>
> pre-integration-test
> integration-test
> post-integration-test
>
> First I want to run them with the my webapp configured the old way, and
> then run the same phases again with my webapp configured the new way.
>
> Any advice on how to do this? The configurations can be set with system
> properties. The problem is how to run those phases twice in that order.
>
> Thanks for any insight you can offer,
> Scott
>