Login Sign Up
Advert
Your ad spot
Reserve this exclusive slot for the selected period.
Buy advertising →
Telegram community logo - QA Co-pilot
Added 06 Dec 2025

QA Co-pilot

@qa_copilot
Number of subscribers: 94
Photos: 271
Links: 45
Description:
QA Co-pilot 🚀 Ваш другий пілот у світі тестування. 👨‍💻 Для кого: Для тестувальників-практиків, які хочуть рости. 🎯 Про що: Делегуємо рутину нейромережам, прискорюємо роботу та звільняємо час на головне. ❌ Чого тут немає: Нудної теорії та води.
Source

QA Co-pilot | Тест на жадібність: Чому ваш API зобов'язаний вміти казати "Стоп" (і я...

Telegram community logo - QA Co-pilot QA Co-pilot @qa_copilot
28 Views/Reach 2026-03-28 08:01 Message №243
🚦 Тест на жадібність: Чому ваш API зобов'язаний вміти казати "Стоп" (і як це перевірити)Привіт, екіпаж! Сьогодні поговоримо про те, як захистити продукт від надто активних користувачів (або від ботів-шкідників). ☕️Уявіть ситуацію: конкурент вирішив "покласти" ваш сайт або хтось намагається підібрати пароль до адмінки (Brute-force). Вони пишуть простенький скрипт, який відправляє 10 000 запитів на секунду до вашого ендпоінту /login.Якщо ваш бекенд намагатиметься чесно обробити кожен із цих запитів — база даних "задихнеться", процесор перегріється, і продакшен впаде для всіх реальних клієнтів (класична DDoS атака).Щоб цього не сталося, нормальна архітектура використовує Rate Limiting (Обмеження запитів).Система запам'ятовує вашу IP-адресу (або токен) і каже: "Так, цьому хлопцю можна робити не більше 5 запитів на хвилину". Якщо ви відправите 6-й запит, сервер навіть не буде його обробляти. Він миттєво відіб'є його зі статусом 429 Too Many Requests.Як Manual QA має тестувати Rate Limiting?Не обов'язково бути хакером або писати складні скрипти на JMeter. Можна влаштувати міні-DDoS своїми руками:🏃‍♂️Метод Postman RunnerВідкриваєте Postman, створюєте звичайний запит (наприклад, на відновлення пароля). У правому нижньому кутку тиснете Runner. Перетягуєте туди свій запит, ставите Iterations: 50 і Delay: 0ms. Тиснете Run.Що шукати: Дивимось на статуси. Перші кілька мають бути 200 OK, а далі система має "захлопнути двері" і видавати суцільні 429. 🔁 Метод "Нервовий юзер" (cURL + Terminal) Клікаєте по запиту в DevTools -> Copy as cURL. Відкриваєте термінал (або командний рядок), вставляєте запит, додаєте в кінці & і так 20 разів підряд. Або просто швидко затискаєте Enter.Що шукати: Переконайтеся, що сервер не тільки віддає 429, але й додає заголовок Retry-After: 60 (який підказує фронтенду, що треба почекати 60 секунд перед наступною спробою). 📱UI-БлокуванняЯкщо ви зловили 429, як на це реагує інтерфейс? Фронтенд не повинен показувати користувачу "білий екран смерті" або сирі логи. Він має показати красиве повідомлення: "Ви відправляєте запити надто часто. Спробуйте через хвилину", а сама кнопка має заблокуватися (стати сірою), щоб уникнути подальших кліків. Висновок: Якщо ви тестуєте форми логіну, реєстрації, SMS-верифікації або використання промокодів — Rate Limiting має бути у вашому чек-листі під номером один. Інакше ваш бюджет на SMS з'їдять боти за півгодини.А у вас на проєкті налаштовані ліміти запитів? 👇🔥 — Так, 429 статус ловимо регулярно, все під контролем!👀 — Сподіваюсь, девопси там щось налаштували...🤯 — Завтра ж піду DDoS-ити нашу форму логіну через Postman!