uv で Nox を使用するサンプルです。
nox
💡 実行後に .nox
を確認すると、各セッション用の仮想環境が作成されている
- testsセッションのみ実行
nox -s tests
- lintセッションのみ実行
nox -s lint
- styleタグのセッションを実行(lint と typecheck)
nox -t style
- testタグのセッションを実行(tests のみ)
nox -t test
@nox.session(python=["3.11", "3.12", "3.13"], tags=["test"]) # 3.12と3.13を追加
def tests(session):
...
nox -s tests
💡 こちらは uv の仮想環境 .venv
で実行される
uv run pytest
# 複数バージョン
# Python 3.11
uv python pin 3.11
uv pip install -e .
uv run pytest
# Python 3.12
uv python pin 3.12
uv pip install -e .
uv run pytest
# Python 3.13
uv python pin 3.13
uv pip install -e .
uv run pytest
uv run ruff check .
uv run ruff format .
uv run mypy src
💡 インストールせずキャッシュディレクトリの一時的な環境で実行
uvx pytest
# バージョン指定
uvx --python 3.12 pytest
uvx ruff check
uvx ruff format
uvx mypy src