[tox] isolated_build = true envlist = py{38,39,310,311,312}-dj{42}-{unittest,pytest,checkmigrations} py{310,311,312}-dj{50}-{unittest,pytest,checkmigrations} py{310,311,312,313}-dj{51}-{unittest,pytest,checkmigrations} py{310,311,312,313,314}-dj{52}-{unittest,pytest,checkmigrations} py{312,313,314}-dj{main}-{unittest,pytest,checkmigrations} skip_missing_interpreters = True [testenv] deps = redis coverage dj42: django>=4.2,<4.3 dj50: django>=5.0,<5.1 dj51: django>=5.1,<5.2 dj52: django>=5.2,<5.3 djmain: https://github.com/django/django/archive/main.tar.gz pytest: pytest pytest: pytest-cov pytest: pytest-django usedevelop = True ignore_outcome = djmain: True commands = unittest: coverage run {envbindir}/django-admin test -v2 unittest: coverage report unittest: coverage xml pytest: pytest --cov=. --ignore=.tox --disable-pytest-warnings --cov-report=xml --cov-append {toxinidir} checkmigrations: django-admin makemigrations --check --dry-run setenv = PYTHONPATH = {toxinidir} PYTHONDONTWRITEBYTECODE = 1 DJANGO_SETTINGS_MODULE = tests.settings [gh-actions] python = 3.8: py38 3.9: py39 3.10: py310 3.11: py311 3.12: py312 3.13: py313 3.14: py314