Skip to content

Latest commit

 

History

History
51 lines (47 loc) · 6.6 KB

testirovanie-polei-i-form.md

File metadata and controls

51 lines (47 loc) · 6.6 KB

Тестирование полей и форм

“Дана форма для регистрации. Протестируйте” - вопрос номер один практически на всех собеседованиях на младшую позицию. Он хорош еще и тем, что в зависимости от уровня кандидата будет раскрыт в разной степени. Всегда в первую очередь уточняйте хотя бы какие-то минимальные требования, даже если вначале озвучивают, что требования не формализованы.

  • Начальный уровень представляет из себя простые позитивные и негативные кейсы (в основном на валидацию):
    • Обязательные поля отмечены *
    • Обязательные поля заполнены/нет
    • Галочки на соглашениях проставлены/нет
    • Поле password и подтверждение имеет соответствующий тип (в полях формы прописан корректный атрибут TYPE, сообщающий браузеру тип элементов формы.)
    • Проверяется, что пароли одинаковы
    • Имя пользователя валидируется как минимум на длину и спец. символы, остальное по ТЗ
    • Адрес почты валидируется в соответствии со стандартом (наличие символа @, несколько символов @, длины частей до и после @, допустимые символы до и после, наличие пробелов перед адресом и после, корректная доменная часть и т.п.)
    • Поля с ожидаемым числовым вводом и текстовым соответственно проверить позитивными и негативными кейсами по типам данных
  • Следующий уровень:
    • Все из предыдущего
    • Кроссбраузерность
    • Понятность формы. Присутствует описание полей или плейсхолдеры
    • Сенситив данные не должны передаваться в URL
    • Проверяем, как форма отображается до сабмита и после
    • Поведение, если нажать сабмит несколько раз подряд
    • Если формы очищаются после сабмита, проверить регистрацию существующего пользователя
    • Проверка глобализации - номер телефона, дата, почтовый индекс, валюта, вертикальное или RTL письмо и т.п. (опционально)
    • Проверка простых инъекций
    • Правильная работа многошаговых форм (Навигация рядом с формой показывает текущий этап и количество оставшихся шагов.)
    • Для полей, предполагающих загрузку файлов, прописан атрибут accept, определяющий тип загружаемых документов
    • Текстовое многострочное поле при вводе объемного сообщения изменяет высоту либо в правой части появляется скроллбар для просмотра всего содержимого
    • Для авторизованного пользователя в поля формы автоматически подставляются все известные о посетителе данные.
    • Форма сохраняется в веб-формах (админ-панели) или SQL-таблицах.
    • Прописан реальный e-mail лица, отвечающего за обработку заявок (если предполагается ОС)
    • Опционально. Пользователь получает уведомление на свой e-mail об успешно полученной заявке и последующих действиях, которые от него требуются.
    • Прописан атрибут autocomplete для полей, поддерживающих это значение
  • Extra:
    • Проверяем, отправились ли данные после сабмита
    • Проверяем, добавились ли соответствующие записи в бд
    • Проверка загрузки формы и сабмита при медленном/нестабильном интернет-соединении
    • Корректность cookies/токена и т.п. после сабмита

Доп. материал: