[Product-Developers] Re: ImportErrors while testing using testrunner

Maurits van Rees m.van.rees at zestsoftware.nl
Thu Feb 11 15:50:18 UTC 2010


Kees Hink, on 2010-02-11:
> I'm trying to get zc.recipe.testrunner to test a specific package,
> but i get ImportError for "deferredimport" and "app.testing"
> (http://pastie.org/819976).
>
> Clearly, some dependencies are missing, but should i add these
> dependencies of zc.recipe.testrunner manually? Is something wrong
> with my buildout (Plone 4.0a4 buildout)? Or should i add extra info
> in the [test] section?
>
> Excerpts from my buildout-dvl.cfg:
> [test]
> recipe = zc.recipe.testrunner
> eggs =
>     contentratings
>
> [buildout]
> extensions = mr.developer
> ...
> auto-checkout =
>     plone.contentratings
>     contentratings
>
> [sources]
> https://svn.plone.org/svn/collective/collective.examples.userdata/trunk/
> plone.contentratings = svn
> https://svn.plone.org/svn/collective/plone.contentratings/trunk/
> contentratings = svn https://svn.plone.org/svn/collective/contentratings/trunk/
>
> (contentratings is a dependency of plone.contentratings)

See tests.cfg in the Plone 4 core buildout:
http://svn.plone.org/svn/plone/buildouts/plone-coredev/branches/4.0/tests.cfg

I think you need to specify all the eggs:

[test]
recipe = zc.recipe.testrunner
eggs =
    ${buildout:eggs}
# Or perhaps:
#    ${instance:eggs}
    contentratings


And as an aside, what I have noticed is that if for example
contentratings specifies in its setup.py a dependency on package foo,
and this is not specifically listed in the buildout/instance eggs, and
you want to run the tests for foo with 'bin/test -s foo' then you need
to add foo to the list of eggs in [test] as well.

-- 
Maurits van Rees | http://maurits.vanrees.org/
            Work | http://zestsoftware.nl/
What are you going to create today?





More information about the Product-Developers mailing list