geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Forrest Xia <>
Subject Re: Reenable testsuite in G 2.2 branch
Date Wed, 12 May 2010 04:49:12 GMT
Thank you, David, for sharing your thoughts here. See my response below.

On Wed, May 12, 2010 at 6:18 AM, David Jencks <>wrote:

> On May 11, 2010, at 2:40 AM, Forrest Xia wrote:
> Hi,
> I spent some time on reenabling G 2.2 branch testsuite to work. After
> comparing 2.2 branch with 2.1 branch, I would propose to revert back to the
> 2.1 configs, that is using maven-maven-plugin to run tests in child
> processes. The benefit is we can use testsuite as a unit to run children
> test cases while just start/stop geronimo server instance only one time,
> this will save time and disk space for testsuite execution.
> Aren't there a bunch of command tests that check that the start/stop server
> commands work?  How will this work with the single start stop?
I might not make myself clear here. Here I say "testsuite as a unit to run
children test cases while just start/stop geronimo server instance only one
time" means that, for each testsuite, the server only needs to start/stop
once if using maven-maven-plugin to run tests in a children process. That
is, for the current set of testsuites, we only need to start/stop server
nine times, since we have nine testsuites.

> I would much rather move 2.2 towards what we're doing in trunk than revert
> back to what is in 2.1 I think that since the failsafe plugin exists and we
> know about it we should use it.  Using standard maven plugins is almost
> always a better idea than trying to come up with something ourselves.
Yes, using failsafe plugin to run integration test is the right thing to do.
Attached the updated poms I replace surefire with failsafe to run
integration test.

> The only objection I can think of to using failsafe is that the server will
> be started and stopped too often.
Yes, as you pointed out, if we use the thing like gtrunk testsuite, it will
cause too many times start/stop of server instance. This not only cost too
much time, but also consume too much disk space. I did a calculation, the
gtrunk way will cost *at least 4G* disk space for each run of
testsuite(because it needs to expand a server assembly for each of test
backets). If we ADD using maven-maven-plugin, it will save three fourth of
time and disk space.

> I wonder if we could get around this by having a geronimo-maven-plugin mojo
> that starts a server if one is not already running.  We'd put this in the
> pre-integration-test phase of every it and put nothing in the
> post-integration-test phase.  I think that, being in a child process, the
> server would get killed when maven exits.  We could also turn off the server
> in the testsuite pom post-integration-test phase.
I think we could get around this by using maven-maven-plugin :-)

> I'm rather mystified as to what happened with the 2.2 testsuite.  I thought
> I remembered it running when I released 2.2, although I always got failures
> on my machine.  It is certainly not running now.  It looks like I updated a
> comment to suggest running with -Pit,all-subprojects although this will not
> start the server before executing the tests.
> So, I'm against moving back to the 2.1 way of running the testsuite unless
> we really can't get anything else to work.
Maybe I should not say "revert back", actually I think we should keep using
maven-maven-plugin because of the benefit it brings as stated above.

> thanks
> david jencks
Please help review the updated poms and let me know if it is OK for you.


View raw message