Выбор ответа Senior Тестирование БД через SQL обновлено
Тестирование миграции
Вопрос
Команда выкатывает миграцию: колонку phone делают NOT NULL. Что важнее всего проверить до релиза?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Поведение на данных как в проде: есть ли NULL, сколько займёт, не будет ли блокировки. На пустой базе любая миграция проходит.
Варианты ответа
- Поведение на данных как в проде: есть ли NULL, сколько займёт, не будет ли блокировкиправильный ответ
- Что миграция проходит на пустой базе разработчика и откатывается обратно без ошибок и предупреждений
- Что приложение собирается и стартует с новой схемой на тестовом стенде
- Что в коде и в ORM-модели поле
phoneпомечено обязательным
Разбор
На пустой базе любая миграция проходит. На проде существующие NULL уронят миграцию, а на большой таблице долгая блокировка остановит сервис. Нужен прогон на копии или обезличенном срезе прода, оценка времени и план отката. Сборка, старт и код важны, но эти риски не ловят.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.