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