Координация автоматизированного и ручного тест-менеджмента |
03.06.2021 00:00 |
Автор: Джоэл Монтвелиски (Joel Montvelisky) Не удваиваете ли вы усилия без нужды?Я давно заметил, что некоторые QA-команды, внедрившие автоматизацию, все еще прогоняют часть своих автоматизированных кейсов вручную. Но ЗАЧЕМ? Когда я спросил тест-сообщество о причинах, то получил вот такие ответы:
Некоторые из этих причин имеют смысл, но во всех перечисленных случаях есть проблема правильной координации автоматизации и ручного тестирования. Проблемы координации автоматизированного и ручного тестированияВ ответ на мой вопрос люди рассказали о проблемах, возникающих при координации ручного и автоматизированного тестирования, не связанных напрямую с повторным прогоном тестов. Вот самые интересные моменты: Определить, что нужно перевести из ручного в автоматизированное тестированиеЭто первая проблема, и одно из наиболее важных решений, так как оно будет определять ценность вашей автоматизации. Не уверен, что идеальный ответ на этот вопрос существует, но, думаю, он должен учитывать три главных фактора. Коэффициент окупаемости – выгодность автоматизации теста, то, что вы получите от автоматизации этого конкретного сценария. Обычно это функция временных затрат на автоматизацию и количества прогонов автотеста – и сбереженного в результате времени. Сложность теста – тут речь о том, насколько сложно создать автотест, и насколько легко провести этот тест вручную. Существуют тесты, чересчур сложные для ручного прогона (к примеру, тесты API), а ряд тестов почти невозможно автоматизировать (к примеру, удобство использования). Нужно грамотно выбирать, какие тесты больше подходят для автоматизации, а какие –для ручного тестирования. Стабильность приложения – возможно, главная проблема любого автотеста – это способность справляться с изменениями в приложении. Некоторые платформы автоматизации делают это лучше других, но ни одна не сможет импровизировать и вникать так, как это делают люди. Этот фактор также поможет вам сделать выбор, что именно автоматизировать, и не работать над частями приложения, которые в ближайшем будущем будут радикально переработаны. Координация задач между командами ручного и автоматизированного тестированияСерьезные проблемы также возникают из-за исходных различий между хорошим ручным тестировщиком и хорошим автоматизатором. Кто за что отвечает?
Ответы на все эти вопросы нужно дать заранее, и тут тоже нет идеальных решений. Лично я убежден, что хороший автоматизатор ближе к разработчику, чем к тестировщику, и поэтому ответственность должна больше лежать на ручных тестировщиках. По сути, мои автоматизаторы предоставляют услугу, сотрудничая с ручными тестировщиками и поставляя им наилучший автоматизированный результат для их тест-сценариев. Я также верю, что автоматизация – часть общих усилий по тестированию, и поэтому решение, что и когда прогонять, должно приниматься группой, отвечающей за тестирование в целом (обычно это также ложится на плечи ручных тестировщиков). Снятие табу с тест-автоматизации Мне очень понравился комментарий Марко Вензелааера на LinkedIn: "Некоторые команды автоматизации превращают автоматизацию в "черную магию", секреты которой бдительно оберегаются от непосвященных". Я, конечно, посмеялся – но и схватился за голову, потому что Марко озвучил то, что я чувствую не первый год. Некоторые автоматизаторы думают, что если их работа воспринимается как нечто загадочное, тяжелое и крайне сложное, то это обезопасит их рабочие места. Они крайне успешно сеют эти мысли в головах ручных тестировщиков, у которых нет опыта программирования – они искренне верят всему, что им говорят коллеги-автоматизаторы. Помимо ложного чувства гарантии занятости, эти автоматизаторы создают что-то вроде табу вокруг своей работы, и ручные тестировщики не пытаются ее понять или как-то повлиять на процесс. В результате это поведение вредит координации усилий и портит картину общих достижений тест-команды. Как же координировать работу автоматизаторов и ручных тестировщиков в команде?Я думаю, что ключ к поддержанию здоровых взаимоотношений ручного и автоматизированного тестирования – это командная работа и коммуникация. Вам нужно убедиться, что обе команды стремятся к одной и той же цели, координируют свои задачи на основании единых приоритетов, и осознают, какой вклад вносит каждый из них в достижение целей организации. Иными словами, они должны понимать, как их совместная работа делает тестирование быстрее, шире и эффективнее. Тривиальные вещи, которые надо учесть:
Если вкратце, вам нужно убедиться, что у ваших команд есть общая цель и инфраструктура, позволяющая координировать их работу.
|