tox - automation project
tox aims to automate and standardize testing in Python. It is part of a larger vision of easing the packaging,
testing and release process of Python software (alongside pytest
tox is a generic virtual environment management and test command line tool you can use for:
checking your package builds and installs correctly under different environments (such as different Python
implementations, versions or installation dependencies),
running your tests in each of the environments with the test tool of choice,
acting as a frontend to Continuous Integration servers, greatly reducing boilerplate and merging CI and
tox has influenced several other projects in the Python test automation space. If tox doesn’t quite fit your needs or
you want to do more research, we recommend taking a look at these projects:
Invoke is a general-purpose task execution library, similar to Make. Invoke is far more
general-purpose than tox but it does not contain the Python testing-specific features that tox specializes in.
Nox is a project similar in spirit to tox but different in approach. Nox’s key
difference is that it uses Python scripts instead of a configuration file. Nox might be useful if you find tox’s
configuration too limiting but aren’t looking to move to something as general-purpose as Invoke or Make.