QA фулстеки: когда они могут сэкономить бюджет |
13.12.2022 00:00 |
Статья компании SimbirSoft Привет! Меня зовут Валерий, я руковожу группой QA Fullstack компании SimbirSoft. В сфере тестирования чаще всего выделяют группы QA-специалистов и SDET. Но сейчас многие компании задумываются об оптимизации расходов, особенно это актуально для проектов с длительным периодом эксплуатации, вроде небольших монолитов или внушительных размеров систем с множеством интеграций и микросервисов. Рано или поздно наступает момент, когда требуется подключать специалистов, которые не только хорошо разбираются в продукте и могут тщательно его протестировать, но и тех, кто могут писать автотесты. Убить двух зайцев сразу помогут QA фулстеки. В этой статье расскажу о том, как QA фулстеки могут существенно улучшить тестирование ПО, на каких проектах они принесут пользу, а для каких задач и почему лучше обратиться к другим специалистам. Материал будет полезен всем, кто хочет обеспечивать качество ПО на высоком уровне и увеличивать скорость выпуска новых релизов, оптимизируя при этом расходы на найм дополнительных специалистов. Что дает подключение QA фулстека на проекты Раньше применялся такой подход, когда на проект отдельно подбирали QA и автоматизаторов тестирования - одни тестировали, другие разрабатывали автотесты. В результате процесс тестирования ускорялся, и все были довольны. Вслед за усложнением задач, которые ставит перед собой бизнес, и постоянным изменением внешних условий мы задумались, как оптимизировать расходы на тестирование, и увидели новые возможности на стыке соприкосновения озвученных выше ролей. Мы решили обучить QA-специалистов навыкам автоматизации и ввели новую роль в команде QA Fullstack или QA Automation Engineer (QAA). В обязанности QA Fullstack теперь входят такие задачи, как улучшение процессов, контроль качества, тестирование и автоматизация тестирования. Подробнее об этом рассказывали тут. После подключения к проектам QA фулстеков мы отметили сразу несколько позитивных результатов:
Но всё вышеперечисленное не означает, что эта роль является серебряной пулей для обеспечения качества любого проекта. В каких-то случаях это может быть совсем не так. Далее разберем, когда стоит подключать QAA. Автоматизация есть? А если найду?Когда автоматизации ещё нетВ начале своего пути в автоматизацию я работал на проекте, где не было автотестов, но они были очень нужны, так как объём регрессионных тестов был довольно велик. Уже тогда я понимал, что автотесты нам точно понадобятся, поэтому сразу писал такие кейсы, чтобы было легко их автоматизировать. Через некоторое время в нашей команде появился SDET, который без особых сложностей внедрил автоматизацию по написанным мной тест-кейсам. Нам удалось сократить время на изучении тестовой документации и аналитики, а значит сэкономить и бюджет клиента. Если автоматизация на проекте отсутствует, QA фулстек может подготовить необходимую почву для её внедрения:
Когда есть автоматизацияПо мере развития проекта времени на написание подробных тест-кейсов по всем сценариям попросту перестало хватать. В какой-то момент мы начали переходить на чек-листы. Чем сложнее становились сценарии, тем больше времени нам приходилось тратить на их обсуждение перед тем, как они отразятся в коде автотестов. Тогда я вызвался помочь автоматизатору, поскольку у меня уже было представление о том, как должны работать автотесты почти для каждой проверки из чек-листов. Результат не заставил себя долго ждать. Симбиоз QA и SDET в нашей команде оказал большое влияние на развитие проекта. SDET контролировал правильность и чистоту моего кода, а я — логику написанных им автотестов, так как уже мог читать чужой код. Вместе мы смогли покрыть регресс гораздо быстрее, что существенно сократило время ручного тестирования и положительно повлияло на качество продукта. Не менее полезным становится QA фулстек и после внедрения автоматизации:
Масштаб имеет значениеЕсли проект небольшойМоя коллега Елена, ментор по QA Fullstack, приводит свой опыт подключения на небольшой проект, когда нужно было провести полный регресс перед первым запуском в прод.
Даже на проектах по разработке небольших систем, но с длительным периодом поддержки требуется внедрение автотестов, когда количество регрессионных тестов постоянно растёт в связи с добавлением новых фич. QAA может один поддерживать необходимые темпы тестирования, если выделять ему достаточно времени для автоматизации. А если проект внушительных размеров? Другой мой коллега Николай, тоже ментор по QA Fullstack, рассказал об опыте внедрения новой роли на проекте, представляющем большую систему из множества микросервисов.
Подключение QA фулстек на большие проекты также позитивно влияет на качество ПО:
Где ещё могут помочь фулстеки?От типа проекта очень сильно зависит стек технологий, с помощью которого можно автоматизировать тестирование. Мы уделяем большое внимание использованию актуальных фреймворков и библиотек, поэтому наши QA фулстеки смогут работать на различных типах проектов:
Для каких проектов нецелесообразно подключать QA FullstackДалее рассмотрим, для каких проектов не стоит подключать QAA – в зависимости от масштаба и уровня ответственности, а также от стека технологий. По масштабу и уровню ответственности:
Важно понимать, что в последнем случае лучше всего сделать выбор в пользу SDET и DevOps, нежели QAA. По стеку технологий:
Вместо выводаКаждый проект является по-своему уникальным, но для большинства из них можно определить степень влияния QA фулстека на качество ПО. Так, например, можно с уверенностью сказать, что основным преимуществом от его подключения на проект будет сокращение времени на переход от мануального тестирования к автоматизированному. Это происходит благодаря тому, что QA фулстек глубоко погружается в функционал системы через выстраивание процесса тестирования, прежде чем приступать к автоматизации. Такой подход даёт уверенность, что автотесты будут проверять самые критичные области ПО, а скорость покрытия будет высокой за счёт грамотно составленных тест-кейсов и понимания бизнес-процесса в целом. В качестве дополнительных преимуществ можно выделить способность QA фулстека проводить тестирование методом белого ящика и обеспечивать более тесное взаимодействие с разработчиками благодаря пониманию структуры кода проекта. Но подключение QA фулстека на неподходящий для него проект может привести к дополнительным расходам без ощутимой пользы для команды и качества ПО. Поэтому требуется тщательный анализ необходимости подбора такого специалиста – нужно учитывать и размер проекта, и его длительность, а также требования к уровню ответственности и стеку используемых технологий. Чтобы исключить недостатки подобного рода, лучше обратиться к экспертам. Они могут детально изучить все потребности клиентов и предложить оптимальные решения, которые помогут достичь результата, оптимизировав расходы. А в ваших командах используется такая роль, как QA фулстек? Поделитесь вашим опытом в комментариях. Больше кейсов и полезных материалов в наших каналах: |