[TIP] Parallel test runner in python?

Kumar McMillan kumar.mcmillan at gmail.com
Wed Mar 11 17:11:31 PDT 2009


On Wed, Mar 11, 2009 at 8:38 AM, muriel bowie <muriel.bowie at gmail.com> wrote:
> We are planning to use python with Selenium Grid [1], and I was
> wondering if anyone else has done this before.

I currently run Selenium Remote Control tests from Nose.  I haven't
set up a grid yet but it works just the same.  You just change your
Selenium connection details (the proxy server) and all the
gridification is handled on the server side, IIRC.

There is a hosted Selenium grid service worth checking out because
getting true scalability out of a custom Selenium Grid takes a lot of
time and effort: http://saucelabs.com/

Also, this does not rely on having a local test suite that knows about
gridification -- all of that happens in the Selenium proxy server.

I have read that Windmill allows you to use multiple slave machines so
I assume it supports running web tests in a grid (maybe someone knows
more about it?):
http://adamchristian.com/archives/43

> What we need is a way
> to run the python tests in parallel on different machines, similar to
> DeepTest in Ruby [4] (sorry for mentioning the R word here ;) ). There
> was a thread on this list in December 2007 [2], but I can't find any
> follow-ups to this. Also, there seemed to be plans to integrate
> parallel testing with nose [3] in 2008. So, the question is: has
> anything been done so far?

If you are asking specifically about Nose, you can use the
multiprocess plugin from this branch:
http://code.google.com/p/python-nose/source/browse/branches/ticket-93/nose/plugins/multiprocess.py

The tricky part is that most Nose-based test suites are not designed
to run in parallel.  Mainly because they rely on package level
setup/teardown.  A good fix that distributes these fixtures without
requiring a radical redesign of one's test suite has not been
implemented yet.

I believe that py.test has better support for running tests in
parallel but I don't have direct experience with this myself:
https://codespeak.net/py/dist/test.html#automated-distributed-testing

>
> I am currently looking into using test.py, but I just want to make
> sure there is nothing else out there that I am missing.

oh, maybe you meant py.test here? :)

>
> Thanks,
> Muriel
>
> [1] http://selenium-grid.seleniumhq.org/
> [2] http://lists.idyll.org/pipermail/testing-in-python/2007-December/000463.html
> [3] http://osdir.com/ml/python.testing.general/2008-01/msg00023.html
> [4] http://deep-test.rubyforge.org/
>
> --
> key :: 0xFC222661
>
> _______________________________________________
> testing-in-python mailing list
> testing-in-python at lists.idyll.org
> http://lists.idyll.org/listinfo/testing-in-python
>



More information about the testing-in-python mailing list