The way we use our tests locally (executing flake8 and nosetests manually) is quite different from what Travis is running and this has (at least for me) caused some missed flake8 failures when I forgot to execute it before opening a pull request. The same goes for the different Python environments, sometimes I miss some Python 2 or 3 thing depending on which virtualenv I am using.
tox seems to solve this in an interesting way, it creates empty virtual environments to install the package (and all its dependencies) and execute the tests. With this we'd automatically know about problems in our build/install as well.
There is integration between tox and Travis here, it seems to simplify things on the Travis side a lot.
The way we use our tests locally (executing
flake8
andnosetests
manually) is quite different from what Travis is running and this has (at least for me) caused some missed flake8 failures when I forgot to execute it before opening a pull request. The same goes for the different Python environments, sometimes I miss some Python 2 or 3 thing depending on which virtualenv I am using.tox seems to solve this in an interesting way, it creates empty virtual environments to install the package (and all its dependencies) and execute the tests. With this we'd automatically know about problems in our build/install as well.
There is integration between tox and Travis here, it seems to simplify things on the Travis side a lot.