Удобная комманда для запуска тестов проекта против нескольких версий Python. Ключевой приём:
uv run --with-editable .[test]
Например, для проекта с
[test] extras:cd /tmp
git clone https://github.com/simonw/datasette
cd datasette
uv run --python 3.14 --isolated --with-editable '.[test]' pytest -n auto
▶️
--isolated — чтобы окружение было чистым.▶️
--with-editable '.[test]' — ставит проект в editable mode, чтобы изменения сразу отражались.▶️
-n auto — pytest-xdist использует все CPU автоматически.uv-test: скрипт для упрощения
Чтобы не вводить длинную команду каждый раз, можно использовать простой helper-скрипт:
uv-test -p 3.14 -k permissions -vv
▶️ По умолчанию использует Python 3.14.
▶️ Можно указать версию через
-p.▶️ Все дополнительные аргументы передаются в
pytest.Скрипт проверяет наличие
uv и pyproject.toml/setup.py, чтобы не запускать тесты не из корня проекта.💡 Результат: быстрое тестирование проекта на любых версиях Python без лишнего геморроя с окружениями и контейнерами.
🐸 Библиотека питониста
#буст