Встречается на собеседованиях • сегодня

Как протестировать миграции в Django

Для тестирования миграций в Django можно использовать несколько подходов:

  1. Тестирование создания миграций
    Проверяем, что миграции генерируются корректно:
    python
    from django.test import TestCase
    from django.core.management import call_command
    
    class MigrationTest(TestCase):
        def test_migrations(self):
            call_command('makemigrations', check=True, dry_run=True)
  1. Тестирование применения миграций
    Проверяем, что миграции применяются без ошибок:

    python
    def test_migrate(self):
        call_command('migrate', verbosity=0)
  2. Тестирование отката миграций
    Проверяем откат до предыдущего состояния:

    python
    def test_migrate_and_rollback(self):
        call_command('migrate', 'my_app', 'previous_migration')
        call_command('migrate', 'my_app')
  3. Тестирование данных после миграции
    Можно создать тестовые данные до миграции и проверить их после:

    python
    def test_data_after_migration(self):
        # Создаем данные
        # Применяем миграцию
        # Проверяем, что данные корректны

Для более сложных сценариев можно использовать TestCase с @override_settings(MIGRATION_MODULES=...) для изоляции тестов.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы