Domanda

Our python project has a requirements.txt file which lists some dependent module. We used to use

pip install -r requirements.txt

to install these dependencies. We are now using tox to build up the test environment. My question is that how can we install the modules via requirements.txt directly.

Followings are our tox.ini and requirements.txt:

tox.ini:

[tox]
envlist=py27
[testenv]
deps=pytest
     boto
commands=py.test

rquirements.txt:

boto

Is any way to remove the "boto" from tox.ini and add something like

deps_files=requirements.txt
È stato utile?

Soluzione

 deps = -r{toxinidir}/tools/pip-requires
        -r{toxinidir}/tools/test-requires

Altri suggerimenti

What helped me is the following (the other solution didn't work for me):

deps=
    pytest
    -rrequirements.txt

This works at least if you add requirements.txt to MANIFEST.in and if you use a relatively new `tox (>= 1.6.1) version (see here).

I had already setup my dependencies as in the accepted answer above, however any new dependencies were not installed like they are when tox is run for the first time. To install new dependencies in the virtualenv I had to force tox to recreate the environment like so:

tox --recreate -e py27

You can put dependencies and test dependencies in requirements.txt and requirements.testing.txt in order to the root directory.

Put tox.ini in your root directory of your project and you can use the approach below to install dependencies.

[testenv] deps = -r{toxinidir}/requirements.txt -r{toxinidir}/requirements.testing.txt

In addition to upgrade dependencies

[testenv] deps = -Ur{toxinidir}/requirements.txt -Ur{toxinidir}/requirements.testing.txt

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top