Ответ
Ad-hoc тестирование — это неформальное, импровизированное исследование приложения без тест-кейсов. Его цель — быстро найти критические дефекты, которые могли ускользнуть при формальном тестировании.
Типичный результат — отчет о найденном дефекте:
Заголовок: [Критичность] Краткое описание проблемы
Серьезность: Высокая (High)
Приоритет: Высокий (P1)
Среда: Chrome 120, Windows 11
Шаги для воспроизведения:
- Откройте главную страницу приложения
https://app.example.com. - В поле поиска введите следующий запрос, включающий специальные символы SQL:
apple'; DROP TABLE users--. - Нажмите кнопку "Найти".
Ожидаемый результат:
- Система обрабатывает ввод как строку для поиска.
- Отображаются релевантные результаты или сообщение "Ничего не найдено".
- В логах приложения нет ошибок, связанных с СУБД.
Фактический результат:
- Приложение возвращает ошибку
500 Internal Server Error. - В логах бэкенда обнаруживается исключение от СУБД:
Syntax error in SQL statement. - При повторении запроса с вариациями (
' OR '1'='1) можно получить вывод всех записей таблицы товаров.
Доказательства:
- Скриншот страницы с ошибкой 500 (вложен).
- Выдержка из лога приложения с SQL-ошибкой.
Корневая причина (предполагаемая): Отсутствие параметризации запросов или санитизации вводимых данных на бэкенде, что приводит к уязвимости SQL-инъекции.
Ценность такого результата:
- Обнаружение критических уязвимостей безопасности, которые часто находятся за пределами сценариев формального тестирования.
- Выявление проблем с обработкой граничных случаев и неожиданного ввода.
- Быстрая обратная связь о качестве продукта, основанная на исследовательском подходе тестировщика.