CLI-инструмент для автоматизации тестов в нескольких окружениях Python с настройкой в обычном файле Python вместо формата ini, используемого tox.
tox-dev/tox
Инструмент командной строки для автоматизации тестирования Python-проектов и проверки сборки пакетов в разных виртуальных окружениях и версиях Python.
- Звёзды
- 3,977
- Форки
- 637
- Открытые issues
- 68
- Последний коммит
- 17 часов назад
Что это?
tox — универсальный инструмент командной строки для управления виртуальными окружениями и запуска тестов. Он собирает пакет, создаёт изолированное виртуальное окружение для каждой настроенной цели, устанавливает в него пакет и его зависимости, а затем запускает тесты. Так проще проверить, что Python-проект корректно собирается и устанавливается в разных реализациях и версиях Python или с разными наборами зависимостей.
Помимо локального тестирования, tox служит интерфейсом для серверов непрерывной интеграции. Конфигурация хранится в одном файле, поэтому на машине разработчика и в CI выполняются одни и те же команды, а дублирующихся скриптов для пайплайнов становится меньше. tox рассчитан на совместную работу с тестовыми инструментами, такими как pytest.
Проект входит в более широкую инициативу по упрощению рабочих процессов сборки пакетов, тестирования и выпуска релизов в Python.
Ключевые возможности
- 01Создаёт изолированные виртуальные окружения для каждой настроенной версии Python или набора зависимостей.
- 02Собирает пакет и устанавливает его в каждое окружение перед запуском тестов.
- 03Запускает в окружениях любые инструменты для тестирования, например pytest.
- 04Служит единой точкой входа для локального запуска и CI-пайплайнов.
Сценарии использования
- Тестирование библиотеки Python на нескольких версиях Python перед выпуском.
- Проверка корректности установки пакета из собранного дистрибутива.
- Замена дублирующихся shell-скриптов в конфигурации CI одним файлом tox.
В подборках
Темы
Частые вопросы
- Что такое tox?
- Инструмент командной строки для автоматизации тестирования Python-проектов и проверки сборки пакетов в разных виртуальных окружениях и версиях Python. tox — универсальный инструмент командной строки для управления виртуальными окружениями и запуска тестов. Он собирает пакет, создаёт изолированное виртуальное окружение для каждой настроенной цели, устанавливает в него пакет и его зависимости, а затем запускает тесты. Так проще проверить, что Python-проект корректно собирается и устанавливается в разных реализациях и версиях Python или с разными наборами зависимостей.
- tox можно использовать бесплатно? Какая у него лицензия?
- tox распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- tox всё ещё поддерживается?
- Активно поддерживается. Последний коммит в tox — 7 нояб. 2026 г..
- Для чего можно использовать tox?
- Тестирование библиотеки Python на нескольких версиях Python перед выпуском. Проверка корректности установки пакета из собранного дистрибутива. Замена дублирующихся shell-скриптов в конфигурации CI одним файлом tox.
- Где скачать tox?
- Исходный код и инструкции по установке — на GitHub: https://github.com/tox-dev/tox
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Современный расширяемый менеджер Python-проектов для сборки, работы с окружениями, тестирования, линтинга, управления версиями и публикации.
Устанавливает и запускает Python-приложения командной строки в изолированных окружениях, чтобы их зависимости не конфликтовали друг с другом или с системой.
Расширение GitHub CLI для автоматизации репозитория с помощью ИИ: описывайте сценарии в Markdown и безопасно запускайте их через GitHub Actions.
Go CLI для генерации документации GFM Markdown по актуальной схеме базы данных с поддержкой diff, lint и ER-диаграмм в CI.
Jenkins — сервер автоматизации с открытым исходным кодом для сборки, тестирования и развертывания ПО, расширяемый более чем 2 000 плагинов.