← Назад к вопросам
Тестирование поля ввода даты с проверкой возраста
1.0 Junior🔥 201 комментариев
#Веб-тестирование#Теория тестирования#Техники тест-дизайна
Условие
На форме регистрации есть поле ввода даты рождения, которое отсеивает пользователей в возрасте до 18 лет.
Используя технику "Граничные значения" (Boundary Value Analysis), напишите тестовые наборы данных для проверки этого поля.
Учтите:
- Пользователи младше 18 лет не должны проходить регистрацию
- Пользователи 18 лет и старше должны успешно регистрироваться
- Текущая дата для расчёта: сегодня
Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI23 мар. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Тестирование граничных значений для проверки возраста 18+
Контекст
Сегодняшняя дата: 23 марта 2026 года (2026-03-23).
Для прохождения регистрации пользователь должен быть 18 лет и старше на момент проверки. Это означает, что ему должно быть ровно 18 или больше.
Дата рождения ограничения:
- Максимально допустимая дата рождения (18 лет назад): 23 марта 2008 года
- Минимально допустимая дата рождения (ровно 18 лет): 23 марта 2008 года
Техника граничных значений (Boundary Value Analysis)
Техника BVA сосредоточена на значениях на границах допустимого диапазона. При проверке возрастного ограничения 18 лет нас интересуют:
- Точная граница — 23 марта 2008 года (ровно 18 лет)
- На день раньше границы — 22 марта 2008 года (17 лет 11 месяцев 30 дней)
- На день позже границы — 24 марта 2008 года (17 лет 11 месяцев 29 дней)
- Далеко за границей (валидные) — 1990 год и раньше
- Далеко за границей (невалидные) — 2025 год (младенец)
Набор тестовых данных
Позитивные сценарии (ожидаемый результат: УСПЕШНАЯ регистрация)
| ID теста | Дата рождения | Возраст | Статус | Описание |
|---|---|---|---|---|
| BVA_001 | 23.03.2008 | 18 лет 0 дней | ✓ PASS | Граница: ровно 18 лет, день и месяц совпадают с текущей датой |
| BVA_002 | 22.03.2008 | 18 лет 1 день | ✓ PASS | День раньше границы: пользователь уже 18 лет и 1 день |
| BVA_003 | 01.01.2008 | 18 лет 82 дня | ✓ PASS | Ранний год: пользователю значительно больше 18 лет |
| BVA_004 | 31.12.1990 | 35 лет 82 дня | ✓ PASS | Значительно старше: проверка глубокой истории |
| BVA_005 | 15.06.2000 | 25 лет 282 дня | ✓ PASS | Взрослый пользователь: четверть века |
| BVA_006 | 23.03.1950 | 76 лет 0 дней | ✓ PASS | Пожилой пользователь: проверка очень старых дат |
Негативные сценарии (ожидаемый результат: ОШИБКА, регистрация ЗАБЛОКИРОВАНА)
| ID теста | Дата рождения | Возраст | Статус | Описание |
|---|---|---|---|---|
| BVA_007 | 24.03.2008 | 17 лет 364 дня | ✗ FAIL | Граница: на день позже — пользователь еще не 18 лет |
| BVA_008 | 25.03.2008 | 17 лет 363 дня | ✗ FAIL | На 2 дня позже границы — не достиг совершеннолетия |
| BVA_009 | 23.04.2008 | 17 лет 11 месяцев | ✗ FAIL | На месяц позже: пользователю еще месяц до 18 |
| BVA_010 | 23.03.2009 | Младше года | ✗ FAIL | Ровно год назад: грудной ребенок (1 год) |
| BVA_011 | 01.01.2010 | ~16 лет | ✗ FAIL | Подросток 2010: значительно младше 18 |
| BVA_012 | 25.12.2025 | ~3 месяца | ✗ FAIL | Младенец 2025: совсем свежее рождение |
| BVA_013 | 23.03.2026 | 0 дней | ✗ FAIL | Рожден сегодня: возраст = 0 лет |
| BVA_014 | 24.03.2026 | Будущая дата | ✗ FAIL | Еще не родился: дата в будущем (невозможна) |
Специальные граничные случаи
Краевые случаи со временем
| ID теста | Дата рождения | Время | Описание | Результат |
|---|---|---|---|---|
| BVA_015 | 23.03.2008 | 00:00:00 | Начало суток (ровно 18 лет в 00:00) | Спорный случай (нужно уточнить логику) |
| BVA_016 | 23.03.2008 | 23:59:59 | Конец суток | Спорный случай |
Специальные даты
| ID теста | Дата рождения | Статус | Описание |
|---|---|---|---|
| BVA_017 | 29.02.2008 | Спорный | Високосный год (день рождения раз в 4 года) |
| BVA_018 | 31.02.2008 | ✗ ОШИБКА | Невалидная дата (февраль не имеет 31 дня) |
| BVA_019 | 00.00.0000 | ✗ ОШИБКА | Полностью невалидная дата |
| BVA_020 | "" (пусто) | ✗ ОШИБКА | Пустое поле |
Матрица высокого риска (приоритет тестирования)
- CRITICAL (P0): BVA_007 (24.03.2008) — граничное значение, где начинает работать блокировка
- CRITICAL (P0): BVA_001 (23.03.2008) — граничное значение, где допускается регистрация
- HIGH (P1): BVA_010 (23.03.2009) — молодой пользователь, может быть эксплуатирована лазейка
- HIGH (P1): BVA_013 (23.03.2026) — крайний случай (рожден сегодня)
- MEDIUM (P2): BVA_017 (29.02.2008) — високосный год, может быть ошибка в расчете
Сообщения об ошибках
Для всех негативных сценариев система должна показывать понятное сообщение:
- "Вам должно быть не менее 18 лет для регистрации"
- "Дата рождения невалидна" (для некорректных дат)
- "Пожалуйста, заполните дату рождения" (для пустого поля)
Итоговые рекомендации
- Все P0 случаи (граничные значения) ДОЛЖНЫ быть протестированы ДО релиза
- Уточнить с разработчиком: как система обрабатывает время в границе (00:00:00)
- Добавить дополнительные проверки на попытку манипуляции датой
- Проверить поведение после разного рода фрод-попыток
- Убедиться, что система корректно отвергает будущие даты