Чек-лист тестирования форм авторизации и регистрации
- Почему важно тестировать формы на всех этапах разработки
- Чек-лист для эффективного тестирования форм
- Технические требования
- Юзабилити
- 3 принципа тестирования, которые помогут избежать ошибок
- Пограничные значения
- Эквивалентность
- Валидация
- Особенности тестирования форм
- Резюме
Почему важно тестировать формы на всех этапах разработки
Регистрация и авторизация на сайте — это процесс получения данных от пользователя, который регулируется законодательством. При нарушении принципов конфиденциальности компания несет юридическую ответственность. К тому же это — конверсионные действия, от которых зависит коммерческая эффективность продукта.
Причины проведения тестирования:
- Стабильность приложения: ошибки в полях могут стать причиной багов. В некоторых случаях сервис перестает работать — обычно такое происходит на ранних стадиях после запуска.
- Безопасность: если не прописать требования к данным, через формы можно проникнуть в базу и украсть информацию о пользователях. Вредоносные скрипты можно отправить не только с помощью функции загрузки файла, но и через текстовые поля.
- Порядок в базе данных: правила ввода с ограничением символов для логинов и паролей помогают избежать засорения БД некорректной информацией и ошибок при обработке.
- Юзабилити пользовательского интерфейса: помимо технических характеристик нужно учитывать удобство формы для клиентов. Если полей слишком много или при регистрации появляются ошибки, вы можете потерять часть аудитории.
Чек-лист для эффективного тестирования форм
Удобство при заполнении форм — это один из главных элементов, влияющих на общее юзабилити сайта или приложения. По этой причине проверять их нужно не только с технических позиций, но и с точки зрения пользовательских сценариев, помощь с проверкой вы можете заказать юзабилити интернет-магазина у нас.
Технические требования
-
При написании кода следует определить типы данных, которые могут быть введены в поля: цифры, буквы, специальные символы или их сочетания.
-
Ограничения: необходимо задать допустимую длину (верхние и нижние пределы), учитывать пробелы и скрытые символы, всё это должно быть прописано в скриптах.
-
Учет регистра: для паролей важно различать заглавные и строчные буквы, а для логинов могут быть предусмотрены разные варианты.
-
Ограничение количества попыток: нужно определить, сколько раз пользователь может ввести данные с ошибками до блокировки. Это защитит от атак методом перебора.
-
Соответствие логина и пароля: важно убедиться, что на этом этапе не возникают ошибки, поскольку персональные данные должны быть защищены. При тестировании следует проверять ввод сначала неправильного логина с правильным паролем, затем наоборот, а также отправку формы с пустыми полями.
-
Двухфакторная аутентификация: если компания обрабатывает личные данные, целесообразно добавить эту функцию.
-
Деактивация кнопки входа до полной загрузки: это предотвращает повторную отправку данных и снижает нагрузку на сервер.
-
Двойной ввод пароля при регистрации: этот метод помогает уменьшить количество ошибок и снизить нагрузку на службу поддержки.
-
Проверка на различные типы инъекций (HTML, SQL, XSS): дополнительные фильтры усиливают защиту.
Юзабилити
- Форму регистрации легко найти на страницах сайта. Это конверсионный элемент, поэтому он должен быть заметным, но при этом содержать небольшое число полей, критически необходимых для бизнес-задач.
- В окне авторизации должна быть ссылка или кнопка на восстановление или смену пароля.
- С точки зрения удобства UI, чек бокс «запомнить меня» — хорошая практика, которая упрощает взаимодействие пользователя с сайтом. Однако она ухудшает безопасность, поэтому ее используют не все разработчики.
- Для опции «скрыть/показать пароль» нужно использовать привычную иконку с глазом.
- При нажатии кнопки «назад» после авторизации приложение не должно разлогинивать пользователя.
- Если данные вводятся неверно, нужно показать пользователю уведомление с причиной. При тестировании проверьте, чтобы сообщение соответствовало виду ошибки.
- Обязательные поля стоит выделять с помощью звездочки. Пока все они не заполнены, кнопка отправки не должна быть активной.
- При наведении на элемент формы должно меняться отображение курсора, а при клике — цвет рамки поля ввода.
- После отправки пользователю нужно показать, что регистрация прошла успешно. Для этого должно быть создано окошко или страница «Спасибо».
3 принципа тестирования, которые помогут избежать ошибок
Чтобы правильно организовать процесс тестирования, используйте три принципа:
Пограничные значения
При написании форм используются лимиты. Обычно проблем в рамках указанных промежутков не возникает, однако перед запуском нужно проверить пограничные числа. Правильное тестирование будет включать проверку:
- рандомных значений;
- минимума;
- максимума.
Эквивалентность
На втором этапе проверки формы, помимо крайних значений, требуется тестировать те, которые выходят за рамки. Например, если при заполнении допускаются числа от 1 до 100, то у поля будет три класса эквивалентности: до 1, от 1 до 100, более 100.
Валидация
При разработке кода необходимо учитывать, что пользователи часто могут допускать ошибки при регистрации на сайте, пропуская символы или неверно вводя информацию. Чтобы уменьшить количество таких ошибок, необходимо предусмотреть валидацию полей ввода. Например, при вводе e-mail адреса следует проверять наличие символа @ и корректных доменных имен. Во время тестирования полезно вводить некорректные данные, чтобы оценить, как приложение реагирует на такие случаи.
Кроме того, важно обеспечить проверку обязательных полей на наличие данных. Если пользователь оставляет обязательное поле пустым, система должна предупредить его об этом и не позволить продолжить процесс до заполнения всех необходимых данных. Это актуально для полей, связанных с критически важной информацией, такой как номер телефона или адрес электронной почты, которые используются для восстановления доступа к аккаунту или подтверждения операций.
Особенности тестирования форм
С технической точки зрения, форма — это пример простой функции, которую можно проверять автоматически. Для этого разработчики пишут скрипт, перебирающий разные модели поведения пользователей.
Есть и готовые плагины для тестирования — к примеру, BugMagnet. Он устанавливается как расширение в браузерах. Кликнув правой кнопкой мыши по полю, вы увидите выпадающий список с нарушениями общих принципов создания форм:
- Ошибки при заполнении полей разных форматов: даты, e-mail, индексы, платежная информация и т.д.
- Проблемы с размерами шрифтов или лишними пробелами.
- Неправильные ограничители, например, когда не все «крайности» учтены при написании кода.
Тестирование юзабилити форм эффективнее проводить вручную с привлечением потенциальных пользователей. Это поможет найти и заметные технические недочеты, и недостатки в дизайне, которые мешают пользоваться сайтом.
Резюме
Каждый проект перед запуском требует проверки, вне зависимости от опыта команды разработчиков. Упомянутые принципы тестирования форм помогают найти неочевидные технические ошибки. Если валидировать каждое действие пользователя, устраивать crush-тесты системе на пограничных показателях и моделировать разные типы поведения, вы сможете минимизировать недочеты после выгрузки.
Не ограничивайтесь техническими критериями и критериями автоматизации: взгляд на продукт глазами аудитории помогает найти неочевидные пробелы. Чтобы не пропустить важные компоненты при ручной проверке, используйте чек-листы.
Услуги, которые будут вам интересны
А также поделитесь статьей с друзьями в соцсетях.