Exploratory testing: что это и с чем его едят

28.02.2013

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

exploratory testing cats

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

Работая с большим количеством программ, относящимся к различным доменным областям, специалисты по тестированию часто задумываются над вопросами:

  • Как определить, насколько полно протестирована система, обеспечено ли максимальное покрытие тестами?
  • Будет ли достаточно проведение тестирования только по сценариям, разработанным на основе функциональной спецификации, для обеспечения высокого качества системы?

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

Как с этим бороться? Ответ прост – применить другой подход. Более «живой» и творческий. Например, исследовательский.

С чего же начать? Прежде всего, необходимо представить себя в качестве конечного пользователя, который впервые видит приложение.

Чтобы сделать это наиболее эффективно, необходимо четко ответить на следующие вопросы:

  • Какова целевая группа пользователей – кто они? (бухгалтеры, маркетологи, банковские или страховые сотрудники и т.д.)
  • Каковы повседневные задачи пользователей? Их цель использования продукта?
  • Каковы типичные задачи, которые должно решать приложение для данной группы пользователей?
  • Как продукт информирует пользователя о своих возможностях? Каким образом «подсказывает» ему в работе?
  • Удобно ли приложение в использовании? Насколько оно надежно и защищено?

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

При использовании такого подхода импровизация, подкрепленная опытом и соответствующими навыками, может привести к замечательным открытиям, которые позволят приложению адаптироваться к новым рискам.

Искусное исследовательское тестирование может считаться одним из важнейших способов тестирования программных приложений. Очень часто недооценивают его ценность и отказываются от проведения, считая «небрежным» и не замечая определенной системности в исследованиях.

Прогресс не стоит на месте, и с каждым днем набор инструментов и процессов пополняется новыми. Однако инструменты и процессы не могут работать самостоятельно – они требуют приложения человеческого интеллекта. Другими словами, инструменты и процессы лишь помогают специалистам по тестированию добиться нужного результата в организации качественного тестирования.

Сотрудники отдела контроля качества ПО компании Qulix давно добавили в свой арсенал эффективный мыслительный инструмент – исследовательское тестирование. Мы на 100% используем свой творческий потенциал во время тестирования, что позволило нам разработать способы эффективного управления мыслительным тестировочным процессом. Вам нужны качественные программные продукты? Мы ждем вас!

Эвелина Тананаева