I agree: if you haven't changed any code, and you haven't changed any unit
tests, then the only tests that need to run are the integration tests that
you are changing. If you've made a mistake and have changed application or
unit test code, your CI process will (should) pick it up.

We use maven code like 
        <execution>
                <id>generate-hbm-files</id>
                <phase>generate-resources</phase>
                <configuration>
                    <tasks>
                        <if>
                            <equals arg1="${generate.hbm.files}" arg2="true"/>
                            <then>
                                    [do stuff]
                            </then>
                        </if>
                    </tasks>
                </configuration>
                <goals>
                    <goal>run</goal>
                </goals>
        </execution>

so that we can call mvn clean package -Dgenerate.hbm.files=true or mvn clean
package -Dgenerate.hbm.files=false as necessary


Kristof Vanbecelaere wrote:
> 
> Maybe I need to rephrase this a bit. Your line of reasoning is absolutely
> correct from a process point of view (like a CI build). But rigorously
> applying this principle across the board denies developers the comfort of
> selectively running subsets of tests. Developer productivity should count
> for something as well.
> 
> 
> Kristof Vanbecelaere wrote:
>> 
>> I disagree. Have you ever written a selenium test? This is trial and
>> error. I have not touched any "real" code, only test code. So I know my
>> unit tests succeed. All I want to do is run the integration-test phase
>> without unit tests.
>> 
>> 
>> Stephen Connolly-2 wrote:
>>> 
>>> 2008/11/27 Kristof Vanbecelaere <kristof.vanbecela...@gmail.com>
>>> 
>>> Actually, that is the aim.
>>> 
>>> You run all the unit tests to make sure that the code is good enough to
>>> try
>>> and run the integration tests.
>>> 
>>> If your unit tests fail, your code is broken and you know it, so fix
>>> your
>>> code.
>>> 
>>> If your unit tests pass, now lets see if it integrates correctly, hence
>>> run
>>> the integration tests.
>>> 
>>> If the integration tests pass, we can publish the project (i.e. install
>>> or
>>> deploy to maven repo)
>>> 
>>> This is what the lifecycle is all about... a well defined sequence of
>>> phases, all the previous phases must complete successfully before the
>>> next
>>> phase starts.
>>> 
>>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/maven-surefire-plugin-configuration-for-unit-integration-tests-tp20724622p23128862.html
Sent from the Maven - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to