Какой последовательности придерживаться при проверке поля ввода?

«Какой последовательности придерживаться при проверке поля ввода?» — вопрос из категории Техники тест-дизайна, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Рекомендуется системный подход, от общих проверок к специфическим:

  1. Пустое значение: Проверка обязательности поля (required attribute/validation).
  2. Пробелы: Тримминг — пробелы в начале, конце, множественные внутри строки.
  3. Граничные значения: Минимальная и максимальная допустимая длина (Boundary Value Analysis).
  4. Некорректные данные (Negative testing):
    • Неверный формат (для email, телефона).
    • Запрещенные символы (эмодзи, SQL-инъекции типа ' OR '1'='1).
    • XSS-пэйлоуды (<script>alert(1)</script>).
  5. Корректные данные (Positive testing): Стандартные валидные значения.
  6. Дополнительные сценарии:
    • Копирование/вставка (Ctrl+V).
    • Международные символы (IDN, email с кириллицей имя@пример.рф).
    • Ввод данных, превышающих длину поля (проверка усечения).

Пример чек-листа для поля "Email":

// 1. Пустое
"" -> "Поле обязательно"
// 2. Пробелы
"  user@mail.com  " -> автоматический тримминг до "user@mail.com"
// 3. Длина
"a@b.c" (мин.) -> OK
// 4. Неверный формат
"user@mail" -> "Неверный формат email"
// 5. Валидное значение
"valid.user@example-domain.com" -> OK
// 6. SQL-инъекция
"' OR 1=1;--" -> "Недопустимые символы"