[openstack-dev] The future of run_tests.sh

Monty Taylor mordred at inaugust.com
Fri Jun 21 18:02:54 UTC 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 06/21/2013 01:44 PM, Joe Gordon wrote:
> It sounds like the censuses in this thread is:
> 
> In the long run, we want to kill run_tests.sh in favor of
> explaining how to use the underlying tools in a TESTING file.

I agree. I'd like to add that 'long run' here is potentially a couple
of cycles away. I think we definitely don't want to get rid of a thing
that a project is currently using without an answer for all of its use
cases.

> But in the short term, we should start moving toward using a
> TESTING file (such as https://review.openstack.org/#/c/33456/) but
> keep run_test.sh for the time being as there are things it does
> that we don't have simple ways of doing yet.  Since run_tests.sh
> will be around for a while it does make sense to move it into
> oslo.
> 
> 
> best, Joe
> 
> 
> On Tue, Jun 18, 2013 at 11:44 AM, Monty Taylor
> <mordred at inaugust.com <mailto:mordred at inaugust.com>> wrote:
> 
> 
> 
> On 06/18/2013 08:44 AM, Julien Danjou wrote:
>> FWIW, I think we never really had a run_tests.sh in Ceilometer 
>> like other projects might have, and we don't have one anymore
>> for weeks, and that never looked like a problem.
> 
>> We just rely on tox and on a good working listing in 
>> requirements.txt and test-requirements.txt, so you can build a
>> venv yourself if you'd like.
> 
> A couple of followups to things in this thread so far:
> 
> - Running tests consistently both in and out of virtualenv.
> 
> Super important. Part of the problem is that setuptools "test"
> command is a broken pile of garbage. So we have a patch coming to
> pbr that will sort that out - and at least as a next step, tox and
> run_tests.sh can both run python setup.py test and it will work
> both in and out of a venv, regardless of whether the repo uses nose
> or testr.
> 
> - Individual tests
> 
> nose and tox and testr and run_tests.sh all support running
> individual tests just fine. The invocation is slightly different
> for each. For me testr is hte friendliest because it defaults to
> regexes - so "testr run test_foo" will happily run 
> nova.tests.integration.deep_directory.foo.TestFoo.test_foo. But -
> all four mechanisms work here fine.
> 
> - pbr
> 
> Dropping in to a debugger while running via testr is currently 
> problematic, but is currently on the table to be sorted. In the 
> meantime, the workaround is to run testtools.run directly, which 
> run_tests.sh does for you if you specify a single test. I think
> this is probably the single greatest current reason to keep
> run_tests.sh at the moment - because as much as you can learn the
> cantrips around doing it, it's not a good UI.
> 
> - nova vs. testr
> 
> In general, things are moving towards testr being the default. I
> don't think there will be anybody cutting off people's hands for
> using nose, but I strongly recommend taking a second to learn testr
> a bit. It's got some great features and is built on top of a
> completely machine parsable test result streaming protocol, which
> means we can do some pretty cool stuff with it.
> 
> 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with undefined - http://www.enigmail.net/

iEYEARECAAYFAlHElUUACgkQ2Jv7/VK1RgGMggCfYIuErSqwiCUKhgCnZKSyjVlw
2gYAoNDkQR6VP8mP2w6rGY6WwRTpOwxy
=svBU
-----END PGP SIGNATURE-----



More information about the OpenStack-dev mailing list