Ответ
Здравый смысл в тестировании — это применение логики и пользовательской перспективы для оценки функциональности, особенно когда формальные требования неполны или неочевидны.
Когда это применяется:
- Оценка юзабилити: Проверка, интуитивно ли понятен интерфейс.
- Проверка граничных случаев: Выявление сценариев, не описанных в требованиях, но возможных в реальности.
- Приоритизация дефектов: Решение, является ли проблема критичной для пользователя, даже если она технически не нарушает спецификацию.
Пример: Требование: "Поле 'Пароль' должно принимать от 6 до 20 символов". Здравый смысл подсказывает проверить:
- Что происходит при вводе 5 или 21 символа? (Ясное сообщение об ошибке).
- Можно ли вставить 20+ символов через копирование? (Защита от обхода).
- Видны ли вводимые символы (маскируются ли они)? (Безопасность).
# Пример теста, выходящего за рамки строгой спецификации
def test_password_field_common_sense():
form = RegistrationForm()
# Проверка на потенциальную уязвимость: вставка слишком длинного пароля
form.password_field.paste("a" * 100)
assert len(form.password_field.value) <= 20, "Поле должно обрезать или блокировать слишком длинный ввод"
Ключевой принцип: Задавайте вопрос: "Будет ли это поведение логичным и удобным для конечного пользователя?" Это помогает находить дефекты, которые формальные тест-кейсы могут пропустить.