Окружения и стенды: 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?


Комментарии


Комментарии

Пока нет комментариев.

Для сохранения прогресса и доступа ко всем функциям, пожалуйста, войдите в систему или зарегистрируйтесь.