[Distutils] Where should I put tests when packaging python modules?

Nathaniel Smith njs at pobox.com
Tue Oct 6 16:12:40 CEST 2015


On Oct 6, 2015 6:06 AM, "Tim Smith" <tim at tim-smith.us> wrote:
>
> On Tue, Oct 6, 2015 at 5:35 AM,  <distutils-sig-request at python.org> wrote:
> > On Tue, 6 Oct 2015 11:30:00 +0300
> > Ionel Cristian M?rie? <contact at ionelmc.ro> wrote:
> >> On Tue, Oct 6, 2015 at 10:51 AM, Antoine Pitrou <solipsis at pitrou.net>
wrote:
> >>
> >> > They should be inside the module. That way, you can check an
installed
> >> > module is ok by running e.g. "python -m mypackage.tests". Any other
> >> > choice makes testing installed modules more cumbersome.
> >> >
> >>
> >> ?Does that really make sense? I haven't heard of any user actually
running
> >> tests that way.
>
> Numeric computing may be a special case because of its sensitivity to
> compiler/BLAS interactions but numpy and scipy support e.g.
> `numpy.test()` and Homebrew has received bug reports from people
> running them and getting unexpected results so I believe this is
> practiced and useful in some domains.

Yes, and numpy upstream gets bug / support requests on a totally regular
basis (weekly-ish?) from end-users who have somehow managed to wedge up
their install and either they noticed because they ran the installed test
suite, or else they are reporting some bizarre results and we say "can you
run python -m 'import numpy; numpy.test()'?". My impression is that there's
a non-trivial subset of users who install numpy from binaries and then
immediately run the test suite as a matter of course, and as a developer
this is something that I'm happy to encourage (yay more test coverage).
Adding another step where they have to download something extra would
definitely discourage this.

I can easily believe that there are other parts of the python world where
this is uncommon, but if some people are saying "I've never seen this and
it isn't useful" and others are saying "I see this all the time and it's
very useful", then this isn't really anecdote versus contradictory
anecdote. The conclusion is that we're talking about a thing that happens
at least sometimes and is useful at least sometimes.

-n
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20151006/bc1a3c4e/attachment-0001.html>


More information about the Distutils-SIG mailing list