Пользователь ломает систему лучше любого тестировщика

Когда разрабатываешь внутреннюю систему, очень быстро понимаешь одну простую вещь: реальный пользователь почти никогда не работает с интерфейсом так, как ты себе это представлял. Ты можешь продумать сценарий, проверить его десять раз, покрыть основные случаи и быть уверенным, что всё достаточно понятно. А потом приходит человек, который за несколько минут делает то, что тебе даже не пришло бы в голову проверить. Открывает форму не в той последовательности. Возвращается назад в середине операции. Вставляет данные не в то поле. Несколько раз нажимает на кнопку, потому что кажется, что ничего не произошло. Оставляет страницу открытой на несколько часов, а потом продолжает работу. И внезапно выясняется, что идеальный сценарий существовал только у тебя в голове. Поэтому со временем я начал гораздо спокойнее относиться к неожиданному поведению пользователей. Это не обязательно ошибка человека. Часто это просто сигнал, что интерфейс позволяет сделать что-то неоднозначно. Особенно интересно наблюдать за этим во внутренних системах, где люди работают с программой каждый день. Они очень быстро находят лишние действия, неудобные места и способы сократить себе путь. Иногда пользовательский "костыль" оказывается хорошей подсказкой для следующей версии интерфейса. В итоге я всё чаще смотрю на разработку не как на создание правильного сценария, а как на попытку сделать неправильные сценарии безопасными. Пожалуй, один из лучших стресс-тестов системы выглядит довольно просто: дать её человеку, ничего ему не объяснять и посмотреть, что произойдёт.

Пользователь ломает систему лучше любого тестировщика | Сетка — социальная сеть от hh.ru