Подход Agile стремится убедиться, что команда с самого начала следит за качеством. На ранних стадиях тестировщики исследуют функцию и сценарии ее использования. В ходе анализа эпиков они узнают больше, оспаривают статус-кво, и помогают прорабатывать юзер-стори с учетом бизнеса и технических перспектив. И, наконец, тестировщики работают с командой над дизайном и внедрением, напоминая о тестируемости, удобстве использования и граничных случаях.
Мнение тестировщика имеет значение в ходе всего процесса, так как тестировщик помогает не забыть о взглядах и пользователя, и инженера, задача которого – искать лазейки и возможные проблемные области как с точки зрения бизнеса, так и с точки зрения технологии.
Когда тестировщики инициируют и поощряют дискуссии, это помогает прояснить тонкие детали элементов бэклога, позволяя инженерам сфокусировать свои действия. Хорошо сформулированные вопросы провоцируют хорошие обсуждения и ответы. Когда тестировщики внятно объясняют свою стратегию, разработчики смогут помочь им убедиться в тестируемости кода, а также написать более сфокусированные юнит- и интеграционные тесты. Все эти меры повышают качество тестирования кода.
В статье, опубликованной на software-testing.ru приведено десять примеров ситуаций, когда все зависит от хороших коммуникационных навыков тестировщика.
1. Тестирование начинается на стадии анализа и дизайна
Как в водопаде, так и в Agile анализ, дизайн и планирование требуют тщательного изучения проблемы и предлагаемых решений. Цель – убедиться, что с учетом знаний и опыта всех вовлеченных принято наилучшее возможное решение. Здесь очень важно, чтобы все четко понимали видение продукта и дальнейший путь.
В этом случае тестировщику нужно общаться с людьми, обладающими широким спектром приоритетов и опыта. В этот момент нужно сообщать о своих наблюдениях, задавать вопросы, защищать пользователя, выражать оправданное беспокойство и давать рекомендации. Вот о чем тестировщик может сообщить в этой ситуации:
- Специфический опыт тестирования похожего продукта, рассказ о том, что было легко и что далось сложно, особенно если это было неожиданно.
- Особые сценарии использования или юзер-стори, затрагивающие доступность, тестируемость, граничные случаи и другие подходящие моменты.
- Удобство использования и дизайн-мышление.
- Тест-подходы, фреймворки автоматизации, и т. п.
- Код-ревью
- Обсуждение тест-стратегии
- Ревью тест-плана или тест-кейсов
- Ревью и оптимизация тест-процессов
- Планирование релизов
- Работа с техническими писателями над документацией продукта
- Убеждение в адекватном покрытии кода и тест-покрытии
- Сопротивление поздней передаче в QA
- Выражение беспокойства
- Ревью и улучшение процесса.
2. Тестировщики как адвокаты качества
Тестировщикам всегда приходится ставить себя на место пользователя системы. Это помогает понять, что нужно пользователю, и какие действия он может выполнять.
Множество этих аспектов покрывается в упражнении по планированию всеобъемлющего тест-кейса. Некоторые аспекты тестирования нельзя покрыть, просто влезая в шкуру пользователя – нужно дать пользователям протестировать систему самостоятельно, чтобы подтвердить их ожидания от продукта.
Тестировщик должен быть адвокатом качества, и может сделать это путем:
- Исследования дефекта, о котором сообщил пользователь.
- Управления ожиданиями пользователя по срокам исправления дефекта.
- Рекомендации обходных путей, если дефект не дает пользователю достичь какой-либо цели.
- Направления к существующей технической документации, если это уместно, или рекомендации техническим писателем по вносу изменений.
- Сообщения пользователям, когда фичи доступны для бета-тестирования.
Хорошие навыки коммуникации могут сделать менеджмент ожиданий и планирования релиза четким и отшлифованным.
3. Голос качества
Agile – самоорганизующиеся команды. Имея такую гибкость, тестировщик может давать коллегам рекомендации по качеству в любой из этих областей
4. Передача знаний
То, что не каждый знающий человек может быть учителем – чистая правда, и зачастую это связано с качеством коммуникации. Важно делать концепции и содержание тест-стратегий ясным и простым для понимания. Это помогает тренировать подчиненных, чтобы они владели лучшими практиками, а также передавать дела новому коллеге, который разделит вашу нагрузку.
5. Канал обратной связи
Обратная связь по рискам, которые осознаны позднее в цикле разработки, или красным флагам, которые могут поставить под удар релизный план, должна выдаваться эффективно и вовремя как линейным коллегам – разработчикам и тестировщикам, так и наверх – тест-менеджеру и другим заинтересованным лицам. Этот канал обратной связи очень важен, если информация может повлечь за собой критичные непростые решения.
6. Коммуникация с заказчиком
Иногда тестировщики общаются с внешними заказчиками об исследовании дефектов, оценках времени на исправление, релизных планах и других ситуациях. Тут требуется более формальный, функциональный, менее технический подход. Будьте краткими, очень внятными, и говорите по делу. Мастерство общения с заказчиком достигается обучением и опытом.
7. Документация
Тест-инженеры могут документировать сценарии использования, паттерны использования и сценарии граничных случаев. Они лучший после менеджера продукта вариант для совместной работы с техническими писателями с целью выявления граничных случаев, внедрения лучших практик, использования новой функции. Хорошие навыки письменной коммуникации сильно помогают в этих небольших, но важных аспектах продукта.
8. Хорошие вопросы
Один из самых важных навыков, помогающих быстро получить правильные ответы или информацию – это умение задавать хорошие вопросы. Технику задавания вопросов можно улучшить, это изучаемый навык. В этой статье верно сказано – “вы можете собрать более качественную информацию, узнать больше, построить хорошие отношения, эффективнее управлять людьми и помочь другим учиться”.
9. Наставничество и руководство тест-командой
В ходе продвижения в карьере – неважно, индивидуально или как менеджеру – все большее значение набирают наставничество и руководство менее опытными коллегами. Это становится очевидным, когда команда растет или при внедрении новой функции: это упрощает планирование, разработку тест-стратегии, получение обратной связи, и обсуждение планов и лучших практик.
Сбор идей, получение обратной связи, и способность проводить хорошие тест-дискуссии – вот навыки, которые позволят команде ценить ваше руководство.
10. Время сопротивляться
Если компания еще не перешла на Agile полностью, тест-команда зачастую становится привратником релизного качества. К добру или к худу, одобрение релиза часто лежит на плечах тестировщиков, а не всей команды и не единого ответственного лица. Такая ситуация часто требует жесткого, но вежливого сопротивления.
В Agile-командах это решение принимается коллективно. Однако это все равно значит, что в случае риска и необходимости сопротивляться тест-инженерам надо подкрепить свои возражения данными, хорошо сформулированными причинами и информацией. Тут потребуется полнота понимания проблемы, риска, а также анализ и консолидация причин.
Руководство по улучшению коммуникации
- Помните о возможностях подать голос в ходе командных обсуждений, обновлений статуса и иных подобных разговоров. Используйте эти моменты для улучшения и практики навыков коммуникации.
- Помните об аудитории, с которой вы общаетесь. Ваша коммуникационная стратегия и выбор слов будут меняться в зависимости от аудитории. Понимание этого помогает управлять дискуссией и поддерживать ее фокус. Это также повышает эффективность и результативность встреч и презентаций.
- Учитесь лучше задавать вопросы. Как упоминалось выше, изучите различные доклады, презентации и статьи о том, как задавать вопросы лучше. Это сложный навык, но он того стоит!
- Больше слушайте. Вы можете эффективно общаться, только если знаете, на какую тему пытаетесь поговорить. К примеру, слушая, вы узнаете детальную информацию о дефекте и его серьезности. Это, в свою очередь, поможет убедиться, что вы знаете, чего ожидать.
- Используйте простые слова. Технический и бизнес-жаргон широко применяются в командах разработки и понятны им, однако недопонимания все равно могут возникнуть – особенно в ситуациях сотрудничества с кросс-функциональными командами или группами, которые могут и не разделять ваш контекст. Конечно, использование стандартного жаргона в нашем деле имеет смысл – но все всегда зависит от вашей аудитории. “Объясняйте как ребенку” – делайте это при возможности, и углубляйтесь в вопрос, только убедившись, что базовое понимание достигнуто.
- Анализируйте и консолидируйте до презентации. Это поможет сделать ваши сообщения точнее, и, следовательно, эффективнее и продуманнее. Применяйте эту технику на презентациях, демонстрациях и при обновлениях статуса.
- Будьте бесстрашны. Не прячьтесь от общения. Если вы не делитесь информацией и не задаете вопросы, это замедлит вашу работу и, в результате, команду. Нет такого понятия, как глупый вопрос или бессмысленное мнение. Уверенно спрашивайте, показывайте, указывайте и обсуждайте.
- Знайте, что вы делаете. Когда ваша информация подкреплена данными, фактами и наблюдениями, вам проще прояснять и выяснять. Используйте это как преимущество.
- Постоянно развивайтесь. Ищите способы развиваться, если вы от природы не одарены отличными навыками коммуникации. Практика, и еще раз практика!
- Получайте обратную связь. Обратная связь от людей, которым вы доверяете внутри и вовне профессионального круга, поможет направить ваше развитие в верном направлении и воодушевить вас.