Четвертый ежегодный отчет отчет «Software Testing and Quality Report», подготовленный платформой управления тестированием TestRail, показывает, что команды обеспечения качества (QA) пытаются преодолеть разрыв между целями автоматизации и реальностью, в то время как ручное тестирование сохраняет свою важнейшую роль, несмотря на внедрение инструментов искусственного интеллекта, сообщает портал ITPro Today.
За последний год в области разработки ПО произошли огромные инновации, поскольку ИИ оказал на нее огромное влияние. Однако это влияние не столь очевидно, когда речь идет о тестировании и обеспечении качества ПО. В рамках очередного исследования TestRail были опрошены тысячи QA-специалистов. Результаты свидетельствуют о том, что отрасль борется с практическими проблемами масштабирования операций по обеспечению качества во все более сложных технических средах.
Организации обнаруживают, что для достижения значимых улучшений качества требуется не только внедрение технологий, но и фундаментальные изменения в процессах, навыках и организационной культуре, которые многие команды все еще разрабатывают.
Ключевые выводы из отчета:
- В среднем респонденты ставят целью автоматизировать 63% тестов (в текущей реальности этот показатель составляет 40%).
- 47% организаций отмечают нехватку персонала как основное препятствие для реализации инициатив по повышению качества.
- 39% команд внедряют QA на более ранних этапах цикла разработки с помощью практики «сдвига влево» (shift-left).
- 86% зрелых CI/CD-команд сообщают о более быстром выпуске релизов, а 71% сталкиваются с меньшим количеством производственных дефектов.
- 54% используют ChatGPT и 23% — GitHub Copilot, но менее трети респондентов интегрируют ИИ в основные рабочие процессы.
- Ручное тестирование по-прежнему доминирует в категориях функционального, регрессионного, сквозного и дымового тестирования.
«Несмотря на то, что за последний год было много шума вокруг ИИ, DevOps и современных практик разработки, сфокусированных на быстрой и качественной доставке (quality at speed), многие основные проблемы, с которыми сталкиваются команды QA, остаются прежними, — говорит Жоан Крисостомо, менеджер по маркетингу продуктов TestRail. — Команды по-прежнему работают изолированно, не успевают за растущим спросом и до сих пор не автоматизировали бóльшую часть тестового покрытия».
Почему команды разработчиков не достигают целевых показателей автоматизации
Отчет выявил значительный разрыв между целями автоматизации тестирования (63%) и текущей реальностью (40%). Существует множество узких мест, которые мешают командам достичь своих целей по автоматизации.
«Разрыв в автоматизации тестирования, как мы его называем, обычно обусловлен тремя ключевыми проблемами: ограниченными навыками, ограниченностью инструментария и нехваткой ресурсов», — поясняет Крисостомо.
Он отмечает, что небольшие команды часто испытывают трудности, поскольку у них нет достаточного количества опытных или специализированных сотрудников для выполнения сложной работы по автоматизации. В то же время даже хорошо обеспеченные ресурсами команды сталкиваются с ограничениями в использовании имеющихся инструментов, многие из которых не могут справиться с растущей сложностью современных требований к тестированию.
«Почти каждая команда, которую мы опросили, назвала пропускную способность основной проблемой, — отмечает Крисостомо. — Это классическая „уловка-22“: вам нужно время на создание автоматизации, чтобы потом сэкономить время, но конкурирующие приоритеты не позволяют инвестировать это время на начальном этапе».
Несмотря на существующие проблемы, некоторым организациям удается ликвидировать или хотя бы сократить разрыв в автоматизации тестирования. По словам Крисостомо, наиболее успешные организации сокращают этот разрыв, инвестируя в масштабируемый инструментарий, повышая квалификацию своих команд и «смещаясь влево», чтобы сделать автоматизацию частью цикла разработки на более ранних этапах. Они также находят способы повторного использования компонентов, сокращают объем работ по обслуживанию тестов и приоритизируют автоматизации, которые приносят наибольшую отдачу.
Проблемы интеграции ИИ сохраняются
Несмотря на то что инструменты ИИ становятся все более распространенными в QA-средах, отчет выявляет значительные пробелы с их внедрением и интеграцией. Хотя более половины опрошенных команд используют ChatGPT и почти четверть — GitHub Copilot, при попытке внедрить ИИ в основные рабочие процессы тестирования организации сталкиваются с проблемами низкого воздействия и сложности интеграции.
Говоря о причинах этих проблем, Крисостомо отмечает, что основная часть инноваций в области ИИ за последний год была сосредоточена на таком аспекте жизненного цикла ПО, как разработчики. Было уделено много внимания и инвестиций кодированию с помощью ИИ, обзорам кода и конвейерам DevOps.
«Между тем повышение качества с помощью ИИ, особенно в области тестирования и безопасности, не получило такого же уровня внимания и ресурсов, — говорит он. — Ситуация начинает меняться, но многие команды все еще рассматривают ИИ скорее как новинку, чем как критически важный инструмент для QA».
Соблюдение нормативных требований и безопасность также являются серьезными препятствиями. В регулируемых отраслях, таких как финансы, здравоохранение, энергетика и государственный сектор, команды очень осторожны. По словам Крисостомо, все большее беспокойство вызывает то, как инструменты ИИ обращаются с конфиденциальными данными, особенно когда неясно, куда эти данные могут попасть и как могут быть использованы.
«Чтобы выйти за рамки экспериментов, QA-руководители должны начать с определения конкретных болевых точек, где ИИ может принести ощутимую пользу, например, сократить объем обслуживания тестов, ускорить регрессионное тестирование или генерировать более интеллектуальные тестовые примеры, — говорит он. — Не менее важно, чтобы они добивались прозрачности и соответствия нормативным требованиям инструментов, которые они внедряют».
Методология «сдвига влево» показывает заметные улучшения качества
Внедрение практики shift-left набирает значительные обороты: 39% опрошенных команд теперь внедряют деятельность по обеспечению качества на более ранних этапах жизненного цикла разработки ПО. Это свидетельствует о заметном росте проактивного управления качеством, переходе от традиционных подходов к тестированию на конечных этапах к интегрированным практикам обеспечения качества на протяжении всей разработки.
Организации, внедряющие методологии «сдвига влево», отмечают ощутимые преимущества, которые оправдывают стратегические инвестиции. Команды, практикующие раннюю интеграцию QA, отмечают снижение числа необнаруженных дефектов, что означает уменьшение количества ошибок, попадающих в производственную среду. Кроме того, эти организации демонстрируют более высокую удовлетворенность QA-процессами в целом, что говорит о том, что раннее вмешательство в обеспечение качества улучшает как технические результаты, так и моральное состояние команды.
Крисостомо отмечает, что в отчете прослеживается корреляция между тесной связью команд, инструментов и процессов и общей эффективностью QA. Команды сообщают о более быстром цикле выпуска, снижении количества дефектов и значительно меньших затратах, связанных с исправлением ошибок на поздних стадиях. Например, исправление ошибки на этапе производства может стоить в 100 раз дороже, чем ее устранение на этапе разработки требований или разработки.
Ручное тестирование сохраняет важнейшую роль, несмотря на развитие инструментов
Вопреки прогнозам о том, что передовые средства автоматизации уменьшат значение ручного тестирования, результаты исследования показывают, что обеспечение качества с помощью человека остается незаменимым.
Большинство респондентов продолжают проводить функциональное, регрессионное, сквозное и дымовое тестирование вручную, что говорит о том, что эти категории тестирования требуют человеческих суждений, творческого подхода и адаптивности, которые не могут повторить современные средства автоматизации.
Устойчивость ручного тестирования отражает сложную природу современных программных приложений, которые часто требуют тонких подходов к тестированию, учитывающих опыт пользователей, крайние случаи и контекстные факторы, которые автоматизированные сценарии могут упустить. Продолжающаяся зависимость от ручного тестирования также подчеркивает меняющуюся роль QA-специалистов, которые должны балансировать между внедрением автоматизации и практическим опытом тестирования, чтобы обеспечить всесторонний охват качества.
Эволюционирующая роль QA-тестирования
Из отчета ясно, что потребности меняются, даже несмотря на то, что 47% организаций отмечают нехватку персонала.
«Роль QA быстро меняется, и ИИ играет важную роль в этой трансформации, — говорит Крисостомо. — Несмотря на некоторые опасения, мы не считаем, что ИИ заменит тестировщиков».
По его мнению, на самом деле происходит изменение ожиданий: тестировщики, которые примут ИИ, будут процветать, а те, кто не адаптируется, могут отстать. По мере того как ИИ ускоряет разработку и увеличивает объем и сложность кода, сильное, стратегическое обеспечение качества станет еще более важным. Почти половина организаций уже сообщает о нехватке QA-персонала, и ИИ поможет сократить этот разрыв за счет автоматизации повторяющихся задач, таких как регрессионное тестирование, генерация тестовых данных и сопровождение тестов.
«В ближайшие два-три года QA-специалистам придется овладевать более гибридными наборами навыков, — говорит Крисостомо. — Это включает в себя освоение работы с инструментами, оснащенными ИИ, развитие базовых навыков написания сценариев или автоматизации, а также глубокое понимание вопросов безопасности и соответствия нормативным требованиям, особенно по мере того, как все больше организаций будут внедрять ИИ в регулируемые среды».