понедельник, 12 марта 2012 г.

"Так никто не будет делать" или защита от дурака

Все мы в цейтноте. Всем не хватает времени. Успеть бы самое важное.
Но тестировщику, который по определению должен быть любопытен сложно запретить ковырять приложение там, где никто не ожидает. И когда он что-то эдакое наковыряет, то часто спешит поделиться результатом с окружающим миром... в виде бага например )
В таких условиях ему часто приходится слышать следующие ответы от разработчиков : "Зачем Вы регистрируете такие баги, ведь в жизни ТАК никто не будет делать!?".
Аргументирует. Доказывает - "Так сделал я, значит рано или поздно так сделает кто-нибудь другой" Иногда с ним соглашаются, иногда - нет. А когда не соглашаются, то , порой потом, бывает, получают такой фидбек: "Ну что же вы , ребята, даже защиты от дурака не сделали. Нехорошо. Не солидно."
Вопрос, стоит ли тратить время на маловероятные сценарии использования или нет? Уверен, что стоит. Да , с учетом приоритетов и предшествующего вылиызвания " основных " сценариев использования.

Сам стараюсь придерживаться следующих правил:

- если речь идет о trusted source, то обращать внимание на "дурацкие" сценарии только в самую последнюю очередь. Например, закрытая админская часть, где пользователь по определению должен быть обучен и не должен быть "сам себе злобный буратина".

- если функционал открыт для широкой общественности, то приложение должено быть максимально предусмотрительным. Тем более, что там где кончается "дурак" часто начинается "вредитель".

- проверять документацию/описание/туториал - действительно ли после ознакомления с ней пользователь будет действительно "дураком" , если сделает так-то или эдак. Часто , причина в "дурацких" действий лежит в неинтуитивности интерфейсов, наложенных на отсутствие внятного мануала.

p.s. ну вот на закусу о "дураках" и "вредителях" - пару месяцев назад был обнаружен критичный баг в Safari . ОТкрываешь iframe с большим значением height и любуешься BSOD-ом. "Дурак" опечатался в "height", а "вредитель" подумал и использовал для выполнения произвольного кода...=)
Так что все как всегда неоднозначно .

1 комментарий:

  1. Будет так кто-то делать или нет - не важно. Если баг есть, то его надо занести в трекер. А чинить или нет, и как быстро - это другой вопрос.

    И чем более серьезные последствия опишет тестировщик, тем больше вероятность фикса.

    ОтветитьУдалить