🔴 Пользователь видел:
Нажал «Оплатить» → экран мигнул → снова корзина
Решил «не нажалось» → тапнул ещё раз → опять ничего
🔴 Тесты видели:
✅ Кнопка найдена
✅ tap() выполнен
✅ Переход на следующий экран
✅ Test passed
🔤 Реальность:
Кнопка с анимацией + медленная сеть = race condition
Второй клик отменял первый API-запрос
Backend возвращал 409, UI молча откатывался назад
💡 Почему тесты не поймали:
1. Проверяли экран, а не результат — смена UI ≠ созданный заказ
2. Не тестировали double tap — в тестах всегда один идеальный клик
3. Не ждали завершения запроса — только waitForElement
4. Flutter-специфика — кастомные виджеты с анимацией ≠ нативные кнопки
✅ Что исправили:
→ Проверка через API: заказ действительно создан
→ Тест на double tap с задержкой 200ms
→ Network throttling в CI (slow 3G)
→ Debounce на кнопке + disabled состояние
💬 А у вас были случаи, когда тесты проходили, а баг уходил в прод?
📍 Навигация: [Вакансии]
🐸 Библиотека тестировщика
#разбор_полетов
