On April 18, 2018 11:53:01 AM GMT+02:00, Baptiste Jonglez 
<[email protected]> wrote:
>Hi,
>
>Does anyone have experience with unit tests for python packages?  It's
>really useful to spot missing runtime dependencies, but it's a pain to
>get
>to work.
>
>Here is what I saw:
>
>1) just running "python -m unittest discover" or "nosetests" or
>equivalent
>  in the check() function does not work, because the package is not yet
>   installed (so all imports will fail)
>
>2) setuptools is supposed to have a unittest integration such that
>   "python setup.py test" should work out of the box, but in my case it
>   never finds any tests to run
>
>3) I've seen some more... "creative" solutions :)
>https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/python-coverage#n28
>
>So far, the only working solution I found is playing with PYTHONPATH:
>
>    cd "$srcdir/$pkgname-$pkgver/tests"
>    export PYTHONPATH="$srcdir/$pkgname-$pkgver/src"
>    python -m unittest discover
>
>But it's a hack, and it probably won't work with things like 2to3.
>
>Any better ideas?
>Baptiste


If you use a build function there shouldn't be any problems like 2to3 while 
running tests, everything should be converted / build and generated for the use 
of tests.
For certain upstream test setups there won't be much you can do other then 
PYTHONPATH but as mentioned with a build function it should always work.
You can give python-pytest-runner a go, it does proper resolution while running 
"python setup.py test" but requires certain ways the whole test suites are 
wired.

Cheers
Levente 

Reply via email to