buildr-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shane Witbeck <sh...@digitalsanctum.com>
Subject Re: unpredictable behavior of test.using :integration
Date Wed, 21 Oct 2009 12:04:44 GMT
I've had some frustration in this area too. In order to run
integration tests you have to call from the top level project. I don't
believe you need the test.using :integration defined in the top level
project because integration tests get run automatically if called from
top level. I'm not 100% sure about this so someone correct me if I'm
wrong.

I've asked for a finer grained approach but was told to either
reorganize where my tests were located or create a project
specifically to contain integration tests.


-Shane



On Wed, Oct 21, 2009 at 3:32 AM, Peter Schröder <ps@blau.de> wrote:
> hi there,
>
> we are experiencing somewhat strange behavior when using integration
> tests.
>
> we have a setup where a project has n subprojects and only one of them
> has tests that should be executed as integration-tests.
>
> we are using environment-variables to let buildr include some test-
> classes that are only executed on our system-test-servers.
>
> this works very well: compiles, package artifacts, calls integration-
> setup, performs-tests, integration-teardown
>
> on the other hand we have the same setup but with a single project
> without subprojects, where the integration setup is missing, so the
> system-tests fail without a system to test. in that project i have to
> call the integration-target directly to have the desired behavior.
>
> the builds are quite complex so i wont include them here, but i played
> around a little bit with a dummy project (see below).
>
> the things i dont understand are:
>
> 1. why are setup and teardown called for all projects even though they
> are never configured with :integration
> 2. why are all tests executed as :integration if you just configure it
> in the parent project
> 3. under wich circumstances will the integration-target get invoked
>
>
> module SystemTests
>   include Extension
>
>   after_define do |project|
>     info "after define for #{project}"
>     #project.test.using :integration
>     project.integration.setup do
>       info "-" * 50 + " integeration setup for #{project}"
>     end
>
>     project.integration.teardown do
>       info "-" * 50 + " integeration teardown for #{project}"
>     end
>   end
>
> end
>
> class Buildr::Project
>   include SystemTests
> end
>
> repositories.remote << 'http://www.ibiblio.org/maven2/'
>
> info "define all"
> define 'all' do
>
>   info "define subA"
>   define 'subA' do
>     info "subA goes here"
>     #test.using :integration
>   end
>
>   info "define subB"
>   define 'subB' do
>     info "subB goes here"
>     #test.using :junit
>   end
>
>   info "all goes here"
>
>   test.using :integration
>
> end
>

Mime
View raw message