Говорим открыто! 🤔
Обсудили с Сашей Дрониным, техлидом QA hh.ru, роль QA в разработке продукта, необходимость раннего подключения к процессу разработки и действия в случае ошибки.
Можно ли выпустить качественный продукт без QA? Да, если команда берёт на себя эту роль. Например, разработчик покрывает свой код автотестами и следит за их стабильностью. Выходящие фичи покрываются мониторингом. При обновлении релиза быстро откатывают проблемные изменения за счёт применения техники фича-тогл.У нас в каждой команде продукта есть QA-инженер, а в платформенных командах эту роль успешно взяла на себя разработка.
Изменилась ли профессия QA-инженера за последние 5–7 лет? Если да, то как? Я бы выделил следующие изменения:1. Сместился акцент с ручного тестирования на автоматизацию.2. С подходами shift-left QA привлекается на ранних этапах разработки в момент обсуждения требований и планирования архитектуры, а не по факту готового кода.3. Роль QA сместилась от контроля, задача которого не пустить в релиз плохой код, к координатору, помогающего с процессами команде, которые позволяют выпускать качественные изменения.
Какие можно выделить качества эффективного QA-специалиста? Когда стоит повышать QA-инженера, а когда — расставаться с ним/ней? Главное — это критичность мышления, когда ты работаешь с фактами, а не эмоциями, и вовлеченность в то, что делает твоя команда. Плохой пример — когда ты не хочешь развиваться, не готов брать на себя ответственность за результат, конфликтуешь с коллегами, не готов к развивающей обратной связи.Уверен, что оценка хорошего QA заключается не в том, сколько ошибок он нашёл на этапе тестирования, а сколько фич его команда выпустила и как при этом их оценивают конечные пользователи.
Какие инструменты тестирования ты считаешь must-have? В первую очередь — всё, что связано с автоматизацией тестирования:- написание автотестов, необходимой инфраструктуры их запуска и результатов прохождения;- TMS-ки, которые позволяют управлять наборами проверок в зависимости от изменений;- инструменты для тестирования API;- снифферы трафика для тех, кто тестирует мобильные приложения.А ещё база — это инструменты для нефункционального тестирования: нагрузка и безопасность, информацию о которых можно легко найти в сети.
Когда ручное тестирование важнее автоматизации? Как вы определяете приоритеты в тестировании? Мы активно применяем исследовательское тестирование, и это основа ручных тестов. Задача QA — пройти нестандартные сценарии поведения пользователя и системы на его действия, UI/UX-тестирование, проверку удобства, интуитивности интерфейса, визуальных элементов, взаимодействия пользователя с приложением.Есть стандартный флоу процесса подготовки и выпуска изменений по продуктовым фичам, поддерживаемым в каждой команде:1. Тестирование начинается на этапе проработки реализации.2. Продолжается по мере готовности кода фичи на этапе ревью разработчиками с предварительным контролем прохождения юнит-тестов, исследовательским ручным тестированием, контролем регрессии за счёт командных автотестов, сборкой изменений в релиз. 3. На готовом релизе ещё раз прогоняются автотесты тем набором, исходя из того, какой сервис релизится. Далее мониторинг фичи на продакшн-среде. При этом фичи запускаются под А/В-экспериментами на ограниченную группу пользователей с контролем продуктовых метрик.
Как действовать QA-лиду в случае критического инцидента? Как разбирать ошибки команды без демотивации? Следовать следующим правилам:1. Выдохнуть :)2. Обсуждать «что произошло» и «как улучшить», а не «кто виноват».3. Поддерживать открытый диалог с командой, рассматривая ошибку как возможность улучшить процессы.4. Выделить конкретные действия, чтобы не допустить повторения.
Чему QA-лиду нужно постоянно учиться? Развивать навыки, лидерские качества, процессы и методологию работы, понимать продукт и его пользователей, учиться работать с разными людьми и их мотивацией, стремиться быть частью команды, а не экспертом-одиночкой.
Ставь ❤️, если было полезно! #hhteam