CheckOps
tox
tox is an MIT-licensed command-line test automation tool for Python that creates isolated environments to run tests across Python versions and dependency sets, locally and in CI.
Latest public signals
Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.
Introduction
tox describes itself as a command-line-driven CI frontend and development task automation tool. It creates isolated virtual environments, installs your package and its test dependencies into each, and runs the commands you define, so you can verify that a library works on Python 3.10, 3.11, 3.12 and newer, or with different versions of a dependency, using one command.
Configuration lives in tox.ini, setup.cfg or pyproject.toml (and, in tox 4, tox.toml). Each environment has dependencies and commands, and factor syntax lets you build matrices concisely (for example py{311,312}-django{42,50}). tox -e lint runs one environment, tox p runs environments in parallel, and the plugin system extends it; the popular tox-uv plugin uses uv for much faster environment creation. Because the same config runs locally and in CI, tox reduces “works on my machine” differences. It is maintained by the tox-dev organisation, and version 4.67.13 was released on 6 November 2026.
The source code is at tox-dev/tox on GitHub under the MIT licence, with about 4,000 stars; the most recent commit was on 11 November 2026.
Features
- Isolated environments: Fresh virtualenvs per test environment.
- Version matrices: Test multiple Pythons and dependency versions with factors.
- Parallel runs:
tox pruns environments concurrently. - Plugins: Extend with tox-uv, tox-gh-actions and others.
Pros
- Free to use: Open source under the MIT licence, so the core tool costs nothing to use.
- Actively maintained: The repository had commits as recent as 11 November 2026.
- Community: About 4,000 GitHub stars.
Cons
- INI-style configuration: Complex matrices can become hard to read; nox uses Python instead.
- Environment creation cost: Fresh environments take time without caching or tox-uv.
Usage and Links (Example)
# tox.ini
[tox]
env_list = py{311,312,313}, lint
[testenv]
deps = pytest
coverage
commands = coverage run -m pytest {posargs}
[testenv:lint]
deps = ruff
commands = ruff check src tests
pip install tox
tox # all environments
tox -e py312 # one environment
tox p # in parallel
Resources:
Pricing
tox is free and open source under the MIT licence.
Recommended for?
- Python library maintainers supporting several Python versions.
- Teams wanting identical test commands locally and in CI.
Conclusion
tox is the long-standing standard for Python test environment automation, especially valuable for libraries with broad version support.
Alternatives
Other tools on CheckOps that cover similar ground. Open a page, or compare one with tox side by side.
NNoxNox is an Apache-2.0 Python test automation tool that defines sessions in a Python file (noxfile.py), running tests across interpreters and dependency sets in isolated environments.Compare with tox- Ppytestpytest is the usual Python test runner: plain asserts, fixtures, parametrization, and a large plugin set.Compare with tox
CCoverage.pyCoverage.py is the standard Apache-2.0 code coverage tool for Python, measuring line and branch coverage and producing terminal, HTML, XML, JSON and LCOV reports; pytest-cov builds on it.Compare with tox
PPython unittestunittest is Python's built-in xUnit-style testing framework, with TestCase classes, fixtures, test discovery, subtests, async test cases and the unittest.mock library, available in every Python install.Compare with tox
HHypothesisHypothesis is the MPL-2.0 property-based testing library for Python: describe the range of inputs, let it generate cases including edge cases, and get the simplest failing example when a property breaks.Compare with tox
Mmutmutmutmut is a BSD-3-Clause mutation testing tool for Python that changes your code in small ways and reports which mutants your tests fail to kill, with a terminal UI for browsing results.Compare with tox