tox (Python testing wrapper)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

tox is a command-line driven automated testing tool for Python, based on the use of virtualenv. It can be used for both manually-invoked testing from the desktop, or continuous testing within continuous integration frameworks such as Jenkins or Travis CI.[1][2] Its use began to become popular in the Python community from around 2015.[3]

tox acts a wrapper for both virtual environments and test automation tools, to simplify the consistent testing of Python code across a range of environments.[4] It integrates the use of a virtualisation tool, such as virtualenv, with a test script such as Imprimatur. This gives a consistent container-based testing environment on both desktops and integration servers. It also allows testing in a range of Python environments, such as Python 2 or Python 3 specific contexts.[4][5]

Tox supports various configuration file formats. Initially configuration could only be done in a tox.ini file in INI format. Since version 4.21 tox supports native TOML configuration integrated into pyproject.toml.[6][7]

Smoke testing

[edit | edit source]

tox is also convenient as a simple smoke test on a newly installed, or freshly-updated system. It is also useful before beginning a refactoring exercise.[5]

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).