Окружения и стенды: dev, stage (ИФТ), preprod, production
🎯 Цель урока:
Понять, зачем нужны разные окружения в разработке, и научиться правильно их использовать для тестирования.
✨ Результат: Вы не перепутаете dev с продом и будете знать, где и как искать баги!
Что такое окружение?
📌 Простыми словами:
Это «площадка», где работает приложение. Как кухни в ресторане 🍳:
dev — кухня для экспериментов,
stage — зал для пробных блюд,
production — столы для гостей.
Виды окружений
1. Dev (development — среда разработки)
- Для кого: Разработчики.
Что происходит: Пишут код, исправляют баги.
- Особенности:
Может быть нестабильным: всё ломается и меняется.
Используются тестовые данные (например, пользователь test@test.com).
Пример: Разработчик добавил новую кнопку → проверил её в dev → отправил на тестирование.
2. Stage / ИФТ (Интеграционно-функциональный стенд)
- Для кого: Тестировщики.
Что происходит: Проверяют, как работают все компоненты вместе.
- Особенности:
Максимально похоже на боевое окружение (production).
Здесь тестируют интеграцию: например, как фронтенд общается с бэкендом.
Пример: Тестировщик проверяет, что заказ создается в CRM, а деньги списываются в платежной системе.
3. Preprod (pre-production)
- Для кого: Тестировщики, DevOps.
Что происходит: Финальная проверка перед релизом.
- Особенности:
Копия production с реальными настройками.
Часто используется для нагрузочного тестирования.
Данные могут быть реальные, но операции не влияют на пользователей (например, платежи в тестовом режиме).
Пример: Проверка, как система поведет себя при 10 000 одновременных заказов.
4. Production (prod — боевое окружение)
- Для кого: Пользователи.
Что происходит: Работает реальный продукт.
- Особенности:
Все данные и операции настоящие (деньги списываются, заказы выполняются).
Любой баг здесь — ЧП 🚨.
Пример: Пользователь оплачивает товар → деньги уходят на счет магазина.
Зачем столько окружений?
- Изоляция рисков: Баги из dev не попадут в prod.
- Постепенная проверка: Сначала тестируем в dev → потом в stage → финальная проверка в preprod.
- Безопасность: В prod нельзя случайно удалить данные или сломать функционал.
👉 Пример:
Если разработчик ошибется в dev, пользователи даже не узнают. Если ошибка «проскочит» в prod — это может стоить компании денег и репутации.
Практическое задание
Задача: Определите, в каком окружении произошла ситуация:
- Пользователь жалуется, что не может оплатить заказ.
- Тестировщик проверяет, как новый модуль работает с CRM.
- Разработчик исправляет баг с отображением кнопки.
- Проверка скорости работы сайта при 5000 посетителей.
Ответ:
- prod (пользователи).
- stage (интеграция).
- dev (разработка).
- preprod (нагрузка).
Итог урока 🎓✨:
Dev — для разработки.
Stage — для проверки «взаимодействия».
Preprod — для финальных тестов.
Prod — священная корова 🐄, где всё должно быть идеально.
💡 Вопрос для размышления:
Что случится, если запустить непроверенный код сразу в prod?
Комментарии
Пока нет комментариев.
Комментарии