[openstack-dev] [testing] moving testrepository *outside* the tox venv

Robert Collins robertc at robertcollins.net
Fri Jul 10 23:33:33 UTC 2015

On 9 July 2015 at 18:34, Flavio Percoco <flavio at redhat.com> wrote:
> On 08/07/15 22:52 +0000, Jeremy Stanley wrote:
>> On 2015-07-09 10:37:17 +1200 (+1200), Robert Collins wrote:
>>> So - I'm looking to:
>>> A) have a discussion and identify any issues with moving testr out of
>>> the venvs. (Note: this doesn't mean stop using it, just removing it
>>> from test-requirements.txt, in the same way that tox isn't in
>>> test-requirements.txt).
>>> B) Capture that in a spec if its non-trivial.
>>> C) find volunteers to make it happen.
>> D) keep reminding developers to install it on their systems when
>> they ask why they can't run tests
>> E) keep reminding developers to upgrade to a newer version when they
>> start running into bugs which aren't exhibited in our CI
>> I think the original decision to install it inside the tox
>> virtualenv was because:
>> 1. it made migrating from nose easier because we didn't have to add
>> new steps in the basic workflow
>> 2. it's one less thing developers need to know to install on their
>> systems
>> 3. it makes sure a new enough version is being used (matching the
>> version used in our CI)
>> I'm not arguing against the change, but think it's worth
>> acknowledging the (perhaps marginal) ongoing costs of the solution
>> and asking whether they're outweighed by the ongoing cost of working
>> around the problem.
> I'm not against the proposal in this thread but I'd like to throw another
> option out there:
> We could also make testr create the `.testrepository` dir in the venv
> when running under tox. If this is currently not possible, it'd be a
> matter of adding a CLI param to it that we can pass to make it create
> the dir where we want.
> `tox` has a `toxworkdir` option that you can set to specify the...
> workdir :)

I'd be ok with that in principle. It will requiring some separation of
self.ui.here which currently roots all lookups - both repo and config.

But, testr is going to learn about test profiles to deal with the need
to run the same tests in many environments - I'm going to tie it into
tox in some fashion.

The design of testr is to be a metatool, fundamentally different to
e.g. testtools which is very location-and-context specific.


Robert Collins <rbtcollins at hp.com>
Distinguished Technologist
HP Converged Cloud

More information about the OpenStack-dev mailing list