🟡 Что происходит после нажатия на кнопку "добавить в корзину"? — 29 марта 2026 г. в 08:56:04.079
🟡 Что происходит после нажатия на кнопку "добавить в корзину"? А что должно происходить? Как и обещал, поговорим подробнее про тестирование. 🍋 Самый низкий уровень — юнит-тестирование. Здесь мы проверяем работу конкретной функции. Например, что у нужного объекта "корзины" появился новый товар. Отдельно можно написать тесты на то, что: - у другой корзины товар не появился, - количество совпадает, - добавляется именно тот товар, который был передан. На этом уровне мы НЕ проверяем инфраструктуру. Нас не интересует, сохранится ли объект в БД и что произойдёт дальше. 🍋 Следующий уровень — интеграционное тестирование. Пользователь добавил товар в корзину. Корзина обновилась. В базу данных записалось корректное значение. В брокер ушло событие добавления. Здесь мы проверяем один конкретный юз-кейс в рамках взаимодействия нескольких компонентов системы. 🍋 И наконец, самый высокий уровень — end-to-end тестирование. Мы проверяем полный цикл: - сайт доступен, - пользователь может авторизоваться, - товар добавляется в корзину, - данные сохраняются, - событие уходит в брокер, - на основе события обновился отчёт о товарах в корзине. Это уже проверка всей цепочки целиком. Чаще всего все эти уровни описываются кодом. Иногда поднимается тестовая база данных и вспомогательная инфраструктура. Практически в любом языке программирования есть инструменты для автоматизированного тестирования. Далее можно настроить систему контроля версий так, чтобы код не попадал в основную ветку, если хотя бы один тест не прошёл успешно. "Я и так вижу, что после добавления товара в корзину всё работает. Зачем мне тестирование?" Система растёт. Модулей становится больше. Добавляется новый функционал. Обновляются старые части. Это неизбежно начинает ломать то, что раньше работало стабильно. Мы не можем держать в голове всю систему и вручную проверять её после каждого изменения. Тесты – это просто способ обезопасить себя и своих пользователей, от случайных ошибок, которые свойственны как человеку, так и ИИ-агенту 🟡 #жёлтый_свет #тестирование #вайбкодинг #разработка

