Ответ
Прогнозирование ошибок (Error Guessing) — это эвристическая техника тест-дизайна, основанная на опыте тестировщика, интуиции и знании типичных уязвимостей системы. Она применяется для быстрого поиска критических дефектов, особенно когда формальные методы (например, анализ граничных значений) недоступны или требуют много времени.
Как применять:
- Анализ истории дефектов — выявление повторяющихся паттернов ошибок в проекте.
- Понимание слабых мест технологии — например, проблемы с кодировкой, обработкой NULL-значений или утечками памяти.
- Проверка неочевидных сценариев — ввод некорректных данных, пропуск обязательных полей, одновременные операции.
Пример для функции деления:
# Тестируемая функция
def divide(a: float, b: float) -> float:
return a / b
# Прогнозируемые ошибки и тест-кейсы:
# 1. Деление на ноль (ZeroDivisionError)
# 2. Передача строк вместо чисел (TypeError)
# 3. Очень большие числа (переполнение)
# 4. Передача None или пустых значений
Почему это работает: Техника использует знание распространённых ошибок разработки и прошлых сбоев системы, что делает её эффективным дополнением к формальным методам тестирования.