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