Корнер-кейсы
Знакомо чувство, когда вроде бы всё протестировано, продукт выходит, а клиент пользуется им не так, как задумано? Вчера прочитал пост Лены Щепловой (продакт лид в Яндекс Еде) про корнер-кейсы — ситуации, с которыми сталкивались практически все.
Согласен с тем, что их важно выявлять вовремя, так как они приводят к потере репутации, денег и создают уязвимости в безопасности. Еще они частенько помогают обнаруживать новые возможности продуктов.
Собрал для вас несколько курьёзных примеров корнер-кейсов:
1️⃣ Голосовой помощник активировался от храпа
Голосовой помощник Alexa слышала в храпе команду пользователя - "Алекса, купи биткоин" и пыталась выполнить команду. Система распознавания речи не имела защиты от ложных срабатываний на неречевые звуки.
2️⃣ Бессмертный игрок
В 2005 году в игре WoW был квест, где игрок временно получал отрицательное здоровье. Когда эффект пропадал, здоровье вычислялось как текущее_здоровье - (-x), что приводило к тому что персонаж становился неуязвимым.
Хотел бы дополнить пост Лены своими методами работы с корнер-кейсами:
🏮Искать пограничные значения: Например, что если пользователь введёт вместо 10 символов 1000&
🏮 Учитывать экстремальные сценарии: Что если сервер получит запрос в момент перезагрузки?
🏮 Закладывать защитные механизмы: ограничение буферов, таймауты соединений, повторные попытки ввода.
🏮 Применять разные схемы тестирования: тестирование на границах, случайные и некорректные данные, хаотическое тестирование.
Даже если вы думаете, что всё предусмотрели, настройте алерты на аномалии. Так, вы сразу узнаете, когда возникают странности.
Удачных проектов! 🥰