Назад к списку

Интуитивное тестирование (AD-HOC TESTING)

Технологии
Nov 19, 2021

Итак, в этой статье мы рассмотрим вопрос интуитивного (ad-hoc) тестирования. Что это такое, какие есть виды интуитивного тестирования, каковы его преимущества и недостатки, а также кто и когда может его использовать. 

 

Ad-hoc testing — это особый вид тестирования, не предполагающий никакой подготовки или планирования, здесь нет тестовых сценариев, как и какого-либо ожидания от результата. Короче говоря, интуитивное тестирование предполагает импровизацию тестировщика. Нет нужды разрабатывать и придерживаться какого-либо плана, или вести документацию, нет никаких тест-кейсов (правда, от этого могут возникнуть трудности с тем, чтобы воспроизвести ошибку – никаких планов и документов то нет). Но при этом не стоит думать, что такое тестирование не будет эффективным. Часто оно дает даже лучший результат, чем работа по плану и сценарию. 

 

Кто и когда выполняет интуитивное тестирование?

Часто бывают ситуации, когда на продуманное и спланированное тестирование уже нет достаточно времени, например, процесс разработки затянулся, или в процессе разработки были выдвинуты новые требования к продукту. В таком случае сроки поджимают, продукт нужно выводить на рынок уже вчера, а совсем без тестирования выпускать ПО никак нельзя, там будет полно багов. Здесь и приходит на помощь интуитивное тестирование. Тестировщик, который проводит такое тестирование, должен в общих чертах понимать, как работает продукт и «прогнать» его основные функции при разных условиях, а также опробовать реакции программы на действия пользователя в рамках здравого смысла.

Именно поэтому тестировать по принципу ad-hoc может только тот человек, который понимает, что из себя представляет продукт. Основная проблема – время. Его нет ни для изучения продукта, ни для составления плана, ни для документирования процесса тестирования. Все нужно сделать быстро (при этом в максимально полной мере).


Виды интуитивного тестирования

А теперь давайте рассмотрим какие есть разновидности ad-hoc тестирования. Вот они:

  1. Buddy Testing. Его смысл заключается в том, что есть два (или больше) «компаньона» (buddies), которые пытаются найти баги в том же функционале в одно и то же время в рамках одного модуля, или системы. Такими компаньонами могут быть, например, программист и тестер.
  2. Monkey Testing. Тестирование «обезьяны» чаще всего применяется во время проверки различных модулей. Его суть – случайное (без какого-либо порядка) тестирование программы, или ее отдельного модуля без всяких кейсов, то есть это полностью рандомный процесс. Это помогает выявить общую стойкость к любым сбоям.
  3. Парное тестирование во многом похоже на Buddy Testing, но в этом случае программист не будет выступать в роли тестера, при парном тестировании работают два тестировщика. Также парное тестирование предполагает работу только с одним модулем, в отличие от Buddy-тестирования. Тестировщики могут разделить между собой роли, скажем, кто-то только прогоняет тесты, а другой – документирует результаты.


Преимущества и недостатки ad-hoc testing

Чтобы понять, насколько хорошо, или плохо работает такая схема, давайте рассмотрим следующую таблицу:

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

  • Все работает максимально быстро, нет надобности выполнять подготовку.
  • Основные и самые критичные баги находятся сразу же.
  • Новый тестер с таким подходом сможет легко и быстро освоить основные моменты, гораздо быстрее, чем в случае тест-кейсов.
  • Можно случайно найти даже сложно-воспроизводимые баги, которые в других случаях остались бы незамеченными.

Недостатки

  • Нет системного подхода, а значит вероятность обнаружения багов ниже, чем при спланированном подходе.
  • Очень сложно воспроизвести условия возникновения бага.
  • Обязательно нужны общие знания о продукте, без них такое тестирование невозможно.
  • Сложно планировать ресурсы для тестирования, ведь непонятно, сколько времени и людей нужно, чтобы провести тесты.

Как повысить эффективность Ad-hoc тестирования

А вот несколько простых советов, которые помогут вам существенно повысить общую эффективность процесса ad-hoc тестирования:

  1. Подготовка. Проанализируйте дефекты в схожих приложениях. Это увеличит вероятность обнаружения подобных дефектов в тестируемом приложении.
  2. Формирование черновика. Это не должен быть подробный план тестирования, а наброски, с чего начать и какие проблемы искать.
  3. Тестирование сессиями. Тестируйте разный функционал продукта поочередно, то есть не все сразу. Это помогает лучше сфокусироваться и осознать трудности.
  4. Уделите внимание целевым областям. В первую очередь проверьте те области, которые не покрыты тест-дизайном и тестовой документацией.
  5. Используйте различные вспомогательные программы. Некоторые дефекты можно обнаружить, используя дебаггеры, профайлеры и мониторинги. Знание таких утилит помогает в тестировании.
  6. Записывайте результаты тестирования. Ведите записи того, какие баги были найдены, в каких частях приложения их больше и т.п. Это может помочь как разработчикам, так и тестерам следующих версий программы. Также можно записать то, что не работало, потому что аналитикам может быть полезно увидеть, что работало хорошо.

При правильном и умелом применении, Ad-Hoc тестирование – это отличный инструмент, который поможет вам в случае дефицита времени на более подробное и спланированное тестирование, а также поможет выявить баги в неожиданных местах после того, как базовое тестирование будет завершено. Но для этого у тестера должно быть общее понимание процесса и знание тестируемого продукта.



Запись на курс Manual QA

Subscribe to Careerist Digest to stay tuned!

Careerist guarantee your privacy. Read our terms and conditions