Тестирование поля ввода адреса электронной почты включает проверки:
- Валидация формата:
- Корректные форматы (имя@домен.зона, имя.фамилия@поддомен.домен.зона и т.д.).
- Некорректные форматы (без @, без домена, с несколькими @, с запрещенными символами, с пробелами).
- Специальные символы в локальной части и домене.
- Доменные имена различной длины.
- IP-адрес в качестве домена (
user@[192.168.1.1]).
- Длина поля:
- Минимальная допустимая длина.
- Максимальная допустимая длина.
- Превышение максимальной длины.
- Обязательность поля:
- Отправка формы с пустым полем.
- Чувствительность к регистру:
- Является ли поле case-sensitive (обычно нет для доменной части).
- Кросс-браузерное и кросс-платформенное тестирование:
- Корректное отображение и поведение в различных браузерах и на разных устройствах.
- Тестирование безопасности:
- XSS-атаки (ввод скриптов).
- SQL-инъекции (если поле взаимодействует с базой данных напрямую).
- Производительность:
- Время отклика при вводе длинных/сложных адресов (если есть валидация "на лету").
Примеры тест-кейсов:
| ID | Описание тест-кейса | Входные данные | Ожидаемый результат | Фактический результат | Статус |
|---|
| TC-001 | Корректный формат email | test@example.com | Система принимает email, нет сообщения об ошибке. | | |
| TC-002 | Некорректный формат (без @) | testexample.com | Система выдает сообщение об ошибке формата. | | |
| TC-003 | Некорректный формат (несколько @) | test@example@com | Система выдает сообщение об ошибке формата. | | |
| TC-004 | Пустое поле (обязательное) | (пусто) | Система выдает сообщение о том, что поле обязательно. | | |
| TC-005 | Длинный email | a*250 + @example.com | Система корректно обрабатывает email допустимой длины. | | |
Пример автоматизированного теста (Python с использованием Selenium):
python