Что такое Ad-hoc тестирование?

Ответ

Ad-hoc тестирование — это неформальный, неструктурированный и импровизированный метод тестирования ПО, выполняемый без предварительного планирования, документации (тест-кейсов, чек-листов) или скриптов.

Суть и цель: Быстрое исследование приложения для обнаружения критических, очевидных или неочевидных дефектов, которые могли быть пропущены при формальном тестировании, за счет свободного творческого подхода тестировщика.

Когда применяется:

  • При жестких временных ограничениях.
  • Для быстрой проверки после исправления багов (санитарная проверка).
  • Как дополнение к формальным методам для повышения покрытия.
  • На ранних стадиях разработки для получения быстрой обратной связи.

Пример сценария: Тестировщик проверяет форму регистрации. Вместо следования кейсу он:

  1. Вводит в поле "Email" строку "test'<script>alert(1)</script>".
  2. Копирует огромный текст из статьи и вставляет в поле "Имя".
  3. Нажимает кнопку "Отправить" 10 раз подряд. В результате может обнаружиться уязвимость XSS, падение сервера или некорректная обработка граничных значений.

Преимущества:

  • Быстрое обнаружение серьезных дефектов.
  • Не требует подготовки документации.
  • Позволяет найти неочевидные сценарии.

Недостатки:

  • Невоспроизводимость: Без записи действий сложно повторить найденный сценарий.
  • Непокрытие: Легко упустить целые функциональные блоки.
  • Сложность оценки: Невозможно измерить полноту тестирования.

Вывод: Ad-hoc — мощный исследовательский инструмент, но он не заменяет систематическое тестирование. Его следует использовать в комбинации с другими техниками.

Ответ 18+ 🔞

Слушай, а вот есть же такая штука, как тестирование по наитию, по вдохновению, блядь! Это когда ты подходишь к программе не как робот с бумажкой, а как свободный художник, ёпта. Называется Ad-hoc тестирование.

Если по-простому, это когда ты нихуя не планируешь заранее. Ни тест-кейсов, ни чек-листов, ни скриптов — один чистый импровизационный пиздец. Просто открыл приложение и пошёл его ломать, куда глаза глядят и куда руки чешутся.

Зачем это надо, спросишь? Да чтобы найти то, что от всех спряталось! Все формальные тесты прошли, а тут ты такой, с хитрой жопой, заходишь с чёрного хода и — бац! — находишь такую дичь, что все ахуеют. Цель — выковырять критические косяки, которые при плановой проверке проскочили бы, как хуй с горы.

Когда это вбрасывают в бой?

  • Время кончилось, а тестить ещё овердохуища? Вот тут оно.
  • Починили один баг — надо быстренько глянуть, не сломали ли всё вокруг, пока никто не видел.
  • Как дополнение к основным тестам, для полного, так сказать, счастья.
  • На ранних этапах, чтобы быстро понять, в какую сторону вообще плющит этот новый функционал.

Вот тебе живой пример, чтобы не быть голословным: Проверяем форму регистрации. Вместо того чтобы тупо вводить «Ivan» в поле «Имя», делаем так:

  1. В поле «Email» вбиваем какую-нибудь пиздопроебибну: "test'<script>alert(1)</script>". А вдруг скрипт выполнится и все данные утекут? Удивление пиздец!
  2. Берём «Войну и мир», копируем весь текст и — хуяк! — вставляем в поле «Имя». Смотрим, не накрылся ли сервер медным тазом.
  3. А теперь тычем кнопку «Отправить» десять раз подряд, как сука-мартышлюшка. Проверим, не создастся ли нам десять одинаковых пользователей и не ляжет ли всё к ебеням.

И вот так, вроде бы ерунда, а может вылезти такая дыра, что волосы дыбом встанут.

Что хорошего?

  • Быстро. Серьёзные косяки находишь почти сразу.
  • Без бумажки. Не надо нихуя писать заранее.
  • Находит неочевидное. Там, где логика молчит, работает интуиция и подозрение, ёбаное.

А что плохого?

  • Не повторишь. Нашёл баг, а как? А хуй его знает, я просто тыкал. Воспроизвести — терпения ноль, ёбать.
  • Можно проебать целый модуль. Увлёкся одной кнопкой, а весь остальной функционал остался нетронутым.
  • Непонятно, сколько сделал. Закончил ты или нет? А хуй его измерит, покрытие-то нулевое.

Вывод, блядь, какой? Ad-hoc — это как хитрая заточка в рукаве. Охуенно в момент неожиданной драки, но на постоянной основе жить только с ней — мудя полная. Это инструмент, а не стратегия. Используй его вместе с нормальным, плановым тестированием, чтобы был и порядок, и творческий беспредел.