geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Berin Loritsch <blorit...@apache.org>
Subject Re: [build] Only run tests if something changed?
Date Fri, 15 Aug 2003 20:00:21 GMT
Bruce Snyder wrote:

> This one time, at band camp, Dain Sundstrom said:
> 
> DS>Can we change the build system to by default only run the module unit 
> DS>test if something changed in the module?
> DS>
> DS>When we get integration tests, I would like the default to by default 
> DS>only run the integration if something changed in the domain being 
> DS>tested, but that is for the future.
> 
> This is a good argument, especially as more tests are added. Does anyone
> know how this can be accomplished in Maven?


It won't be easy.  If you are talking about binding a test to an implementation,
then there is a bunch of infrastructure things that would need to happen first.
For example if you want to only run the ThingTestCase if the Thing source code
changes, you have to have a way to bind the two together.

My suggestion is to group your tests into functional units so that you test a
Jar at a time.  That would encourage Geronimo to have a group of JAR files
instead of one big one.  That way you can at least confine the tests to be
run on a small part of Geronimo instead of the whole thing at once.

It will also help developer not get overwhelmed at the number of tests in the
whole system.  I believe the Maven reactor builds can determine if sub-projects
are up to date and skip the build/test cycle for those sub-projects.

Not exactly sure how it works though.  I saw Stephen McConnell on the list,
and I believe he has a better idea of how to put it together.  Of course,
you could take it to the Maven user's list...

-- 

"They that give up essential liberty to obtain a little temporary safety
  deserve neither liberty nor safety."
                 - Benjamin Franklin


Mime
View raw message