четверг, 24 ноября 2016 г.

Панбагон. Разные условия на полях «Пароль» и «Подтверждение пароля»

Пошла регаться на портал госуслуг. Заполняешь инфу о себе, а потом придумываешь пароль. Хороший пароль — это фраза. Например, "Шла Саша по шоссе". И запомнить легко, и подобрать сложно. Набираю такой пароль, повторяю его...

— Введенные пароли не совпадают
— Снова ввожу "повторение пароля"
— Введенные пароли не совпадают
— о_О

Пробую и так, и сяк. Стерла и снова ввела первый пароль, потом второй. Тут сидящий рядом муж замечает — «Так у тебя даже длина разная!». Я смотрю на экран, стираю первое поле и начинаю снова вводить. Вот для скриншота ввела «Раз два три»:


Первое поле — при вводе пробела звездочка в поле появляется и тут же пропадает (запретили ввод, походу).

Второе поле — пробел не режется. Поэтому пароль получается длиннее:

Вводишь одно и то же, но значения отличаются по длине

Вот тебе и проверка!

Во-первых, зачем вообще запрещать какие-то символы в пароле? Тебе, наоборот, лучше — пароль сложнее. При этом как пользователю узнать, что у него что-то порезалось? Пароль же скрыт под звездочками. Я даже не вижу, что символ "пропал"...

Во-вторых, если ставить проверки, то везде:
— при регистрации в обоих полях ввода пароля;
— при авторизации;

В данном случае продолбали второе поле. Это как раз из серии "делать втупую" — аналитик сказал вырезать пробелы в пароле, разработчик убрал. Пробелы в поле "пароль". Ровно что сказали. А тестировщик тоже проверил ровно то, что написано в ТЗ. Но просто проверить задачу нельзя. Надо покопать вокруг. На что еще повлияет? Так так так, хотим вырезать пробелы. А где вообще вводится пароль? О, тут два поля, а второе сделали? Нет? Reopen, дорабатываем. А на авторизации? Нет? Надо доделать, вы что! Это пользователь зарегается, а войти потом не сможет! Потому что откуда ему знать, что при регистрации форма вырезала пробелы?

В общем, давайте оформим по шаблону:

***********************************************************************

При регистрации с пробелом в пароле ошибка «Данные не совпадают»


Шаги для воспроизведения

  1. Открыть регистрацию на госуслугах — https://esia.gosuslugi.ru/registration/
  2. Заполнить ФИО, телефон и емейл
  3. Ввести пароль с пробелом в оба поля, например: «Раз два три»
Результат

В поле «Пароль» пробелы вырезались, а в поле «Подтвердите пароль» — нет. В итоге разная длина и ошибка «Пароли не совпадают». См рис «Ошибка пароля».

Ожидаемый результат

Когда пользователь вводит одну и ту же строку, она должна считаться одинаковой. Непонятно, зачем вырезать пробелы — стоит убрать это ограничение.

Но, если оставить, то вырезать их везде:

— при регистрации в обоих полях ввода пароля;
— при авторизации;
— ручным вводом и когда пароль вкопипастили;

Тогда пользователь даже не заметит, что система вносит в его пароль свои правки.

***********************************************************************

В ожидаемом результате мы предлагаем свою идеальную картину мира, но мы можем чего-то не знать. Может, это требование свыше или решает какую-то проблему. На этот случай мы расписываем, где поправить, чтобы требование работало везде.

Это вполне нормально в баге, описать результат "или или". Иначе баг отложат, вернутся через полгода и скажут «Ээээ, ну надо же вырезать, потому что... Поэтому просто поправлю второе поле». А в авторизации останется неработающим, потому что о ней мы ничего не писали. И снова reopen, обсуждения и все такое. Предлагайте сразу возможные варианты!

См также:
Шаблон бага → использовался в статье
Шаблон улучшения — Как продумывать свое улучшение с примером, когда это приводит к отказу от постановки задачи.
Как заводить задачи в баг-трекер → подробнее о том, как ставить задачу и заполнять обязательные поля.

PS — добавила пост в общую копилку багов.

Комментариев нет:

Отправить комментарий