Почему миграции выполняются быстрее под `./manage.py test` по сравнению с `./manage.py migrate`?

Почему миграции выполняются быстрее при ./manage.py test по сравнению с ./manage.py migrate (на свежей базе данных)? Я не использую базу данных в памяти для модульных тестов или чего-то подобного. И настоящее приложение, и база данных для юнит-тестов используют один и тот же докер-контейнер mysql. Я использую NoseTestRunner.

Это возникло потому, что я пытаюсь использовать бегунок Pytest, но обнаружил, что он работает намного медленнее.

Я знаю, что ./manage.py test на самом деле запускает миграции, таких коротких путей нет.

Я не проверял технически, что во всех случаях выполняется одинаковое количество миграций.

Я предполагаю, что применяется какая-то оптимизация базы данных, например, удаление ограничений или что-то в этом роде.

У меня установлены эти две зависимости. django-nose==1.4.7 Django==3.2.25

Вернуться на верх