После запуска акции стало ясно: один и тот же одноразовый промокод используют сотни раз. Причина оказалась не в утечке — а в ошибке логики.
🔍 Суть проблемы:
Проверка «использовал ли пользователь промокод» выполнялась только через cookie.
На сервере не было ни проверки, ни учета.
Что делал пользователь:
— инкогнито → cookie нет → промокод снова активен
— другой браузер → снова работает
— чистка cookies → система «забыла» использование
Итог: бесконечные скидки → прямые убытки.
👀 Почему так бывает:
— доверие к клиенту (валидация только в браузере)
— нет проверки на уровне API: использовал ли этот user / email промокод
— отсутствие негативных сценариев в тест-плане
— привязка к сессии вместо user_id
❓ Тестируете такие кейсы:
👍 — Да, API и негативные сценарии
❤️ — Только функциональные проверки
😁 — Пару кликов руками
🔥 — Теперь точно добавлю в тест-план
🐸 Библиотека тестировщика
#разбор_полетов
