Топ-5 качеств успешного тестировщика

Топ-5 качеств успешного тестировщика

Перевод статьи «Top 5 Things a Tester Must Have to Excel (And the Software Tester’s Shifting Perspectives)».

За 10 лет работы в индустрии тестирования программного обеспечения у меня была хорошая возможность лично наблюдать за развитием отрасли.

В начале моей рабочей деятельности тестирование ПО только начинало приобретать важность и лишь совсем недавно превратилось из “следует делать” в “обязательно делать”, вне зависимости от жизненного цикла разработки ПО. Раньше тестирование не считалось столь значимым по причине больших финансовых и временных издержек.

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

Друзья, поддержите нас вступлением в наш телеграм канал QaRocks. Там много туториалов, задач по автоматизации и книг по QA.

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

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

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

Пока тестировщики стояли на месте, потребительский рынок продолжал развиваться – время концентрации людей на чем-то сокращалось, потребность в быстром развертывании росла, за быстрыми изменениями в технологиях было все сложнее уследить. Индустрия требовала большего при наименьших затратах. Концепции Agile-тестирования набирали популярность. Признаюсь, я тоже хотел запрыгнуть на подножку Agile.

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

Когда мы приступили к работе, мы попали в смертельно скучную колею ручного тестирования. Оказаться в такой ситуации легко, потому что она не требует никаких усилий и умственных способностей. Но осознать этот факт, и захотеть что-то изменить совсем не просто. Хитрость заключается в том, чтобы изначально не попасть в такую колею.

Качества, которые помогут достичь успеха в QA

1. Постоянное совершенствование

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

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

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

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

2. Навыки программирования

QA инженеры обязательно должны знать основы программирования. Без навыков написания базового кода нельзя стать хорошим специалистом в области тестирования.

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

Если команда тестировщиков понимает код, она действительно предоставляет собой особую ценность для процесса тестирования продукта.

3. Инновационный ум

Тестировщикам нужно постоянно думать о том, как они могут сделать две вещи, и сделать их непременно хорошо:

  • разнообразить сценарии тестирования;
  • совершенствовать методы тестирования.

При наличии этих навыков создание сценария тестирования становится просто частью разработки стратегии. Его реализация больше не будет проблемой. Это позволяет тестировщику сосредоточиться на самой стратегии, а не на деталях тестирования. Они перестают “париться по мелочам”. Многие инструменты и программы для тестирования программного обеспечения являются результатом такого дальновидного мышления.

4. Коммуникативные навыки

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

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

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

5. Ответственность

Это слово вызывало дискомфорт у некоторых QA инженеров, с которыми я работал в прошлом. У меня есть две трактовки данного термина:

Ответственность за тестируемый продукт

Многие тестировщики приходят в офис утром, работают над своими задачами, а после чего вечером уходят домой. Как только их задачи на день выполнены, они собирают вещи и покидают рабочее место. Звучит разумно? Да, и многие люди намеренно добиваются такого распорядка на рабочем месте.

Однако я хочу сказать не об этом. Я хочу сказать, что зачастую тестировщики не видят, как их продукт вписывается в общую картину.

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

Ответственность за допущенные ошибки

Люди считают, что тестировщики – это те, кто ищет чужие ошибки. И сами тестировщики тоже часто в это верят. Однако QA инженеры (как и все остальные) тоже совершают ошибки, и умение признавать этот факт многого стоит.

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

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

Мир движется вперед, индустрия движется вперед, и тестировщики тоже должны не отставать и двигаться вперед. “Учитесь, совершенствуйтесь, внедряйте инновации”.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *