3 способа улучшить непрерывное тестирование для генеративного ИИ

Ця стаття доступна українською мовою
робот

По мере того как ИТ-директора и команды разработчиков все чаще используют генеративный искусственный интеллект, команды QA также должны адаптировать свои методы непрерывного тестирования, чтобы не отставать от них.

Генеративный искусственный интеллект, ChatGPT и большие языковые модели (LLM), такие как GitHub Copilot и другие инструменты генерации кода ИИ, меняют практику разработки ПО и производительность труда. По данным исследовательской компании McKinsey, разработчики, использующие инструменты генеративного искусственного интеллекта, более счастливы, более продуктивны и могут сосредоточиться на более значимой работе. Согласно этому отчету, искусственный интеллект может помочь разработчикам ускорить документирование, генерацию кода и рефакторинг на 20-50%. Полученные данные позволяют предположить, что все больше ИТ-директоров и команд devops будут экспериментировать с генеративными возможностями ИИ для повышения производительности разработчиков и ускорения модернизации приложений.

Если генеративный ИИ помогает ускорить кодирование и разработку ПО, то будут ли тестирование и обеспечение качества идти в ногу с этим ускорением? К сожалению, история показывает, что практика тестирования отстает от повышения производительности разработки и автоматизации devops.

В конце 1990-х годов Кент Бек дал определение разработке, управляемой тестами (TDD), а автоматизация тестирования существует уже некоторое время, однако многие компании по-прежнему недостаточно инвестируют в тестирование ПО. Непрерывное тестирование отстает от инвестиций в автоматизацию развертывания с помощью CI/CD, сборки инфраструктуры как кода (IaC) и других практик devops. По мере того как все больше организаций используют devops для увеличения частоты развертывания, перед командами встает задача внедрения непрерывного тестирования, использования флагов возможностей, внедрения релизов Canary и добавления возможностей AIops.

Вот три способа, с помощью которых разработчики и команды могут адаптировать непрерывное тестирование к новой среде разработки с возможностями генеративного ИИ.

Рекомендуем прочитать: Как защитить свои данные в эпоху цифровой трансформации?

Увеличение "покрытия" тестами

штучний інтелект

В качестве первого шага командам обеспечения качества (QA) следует ожидать увеличения количества стороннего кода, создаваемого генеративным искусственным интеллектом, и добавить инструменты и средства автоматизации для проверки и отметки такого кода. "В ближайший год популярность инструментов генеративного искусственного интеллекта будет расти, что значительно увеличит скорость работы, но при этом создаст риски для безопасности", – говорит Мередит Белл, генеральный директор компании AutoRABIT. "Командам необходимо уже сейчас внедрять статический анализ кода и автоматизацию интеграционных тестов, чтобы стать защитой для этой новой технологии".

Статический и динамический анализ кода, включая SAST, DAST и другие тесты безопасности кода, являются ключевыми инструментами для команд разработчиков, стремящихся использовать код, созданный искусственным интеллектом, или интегрировать открытый код и другие примеры кодирования, предложенные LLM. Эти тесты позволяют выявить уязвимости безопасности и проблемы с форматированием кода, независимо от того, был ли он сгенерирован разработчиком или искусственным интеллектом.

Автоматизация тестовых заданий

Команды QA также должны ожидать, что команды devops будут разрабатывать функции быстрее, что приведет к увеличению количества тестовых случаев, требующих автоматизации. Если тестирование программного обеспечения не успевает за скоростью разработки и кодирования, то как и где генеративные инструменты искусственного интеллекта могут восполнить этот пробел? Муш Хонда, главный архитектор по качеству компании Catalon, предлагает: "Генерируемые искусственным интеллектом тесты, основанные на реальных маршрутах пользователей, должны сочетаться с визуальным тестированием, проверкой доступности и сравнительным анализом производительности в браузерах и на устройствах, чтобы гарантировать, что все версии отвечают требованиям сквозного пользовательского опыта". 

Эмили Арнотт, менеджер по контент-маркетингу компании Blameless, напротив, считает, что QA также должны рассмотреть возможность использования LLM для генерации и автоматизации большего количества тестовых случаев: "Автоматизация тестирования может использовать инструменты искусственного интеллекта, такие как LLM, чтобы стать быстрее и гибче. LLM позволяют запрашивать сценарий на естественном языке, поэтому можно сказать: "Напишите мне сценарий, который тестирует этот кусок кода с каждым вводом из этого лог-файла", и он будет работать".

Масштабирование и управление тестовыми данными

інтелект

Еще один момент, которого следует ожидать, – это увеличение сложности тестов. Например, при создании тестовых примеров для поисковой системы могут использоваться маршруты пользователей и популярные ключевые слова, фиксируемые в лог-файлах и инструментах наблюдаемости. Однако по мере того как все больше компаний будут осваивать LLM и AI-поиск с использованием интерфейсов запросов и подсказок на естественном языке, тестовые примеры должны будут становиться все более открытыми. Чтобы удовлетворить этот спрос, QA потребуется гораздо больший и более динамичный набор тестовых данных. Команды Devops должны искать способы автоматизации тестирования приложений, разработанных с использованием LLM и интерфейсов запросов на естественном языке.

"В динамичных средах время имеет решающее значение, и комплексная система управления тестовыми данными с возможностью самообслуживания является критически важной. Команды Devops должны иметь возможность автоматически генерировать виртуальные базы данных из производственной среды в непроизводственную, – говорит Роман Голод, технический директор и соучредитель компании Accelario. Увеличение возможностей тестирования, частоты и размера наборов тестовых данных может потребовать от команд разработчиков пересмотреть архитектуру и мощность своей инфраструктуры разработки и тестирования. Сунил Сенан, SVP и глобальный директор по данным, аналитике и искусственному интеллекту компании Infosys, добавляет: "Команды разработчиков приложений должны рассмотреть возможность переноса конвейеров devsecops на гиперкамеры с функциями автоматизации тестирования на базе ИИ, такими как генерация синтетических данных, генерация тестовых сценариев и обнаружение аномалий в тестах для улучшения операций машинного обучения".

Выводы

Таким образом, QA может увеличить объем и глубину тестирования за счет автоматизации тестирования, масштабирования непрерывного тестирования, использования возможностей генерации тестов на основе искусственного интеллекта и централизации больших наборов тестовых данных. "Ведущие команды разработчиков приложений будут внедрять исследовательское тестирование на базе искусственного интеллекта и непрерывное регрессионное тестирование, – поясняет Эско Ханнула, SVP по управлению продуктами компании Copado. Тестирование превратится из реактивного в проактивное, а искусственный интеллект будет выявлять крайние случаи и ошибки еще до того, как функция будет создана". Такой уровень роботизированного непрерывного тестирования должен не только ускорить разработку, но и повысить качество приложения до уровня, которого мы не могли достичь с помощью базовой автоматизации тестирования".

Коти Розенблат, технический директор компании Catalon, добавил: "Мы видим все более обширное тестирование для подтверждения работоспособности, в то время как раньше они могли ограничиться относительно простыми синтетическими тестами. Команды создают динамические наборы тестов, которые могут быть сфокусированы конкретно на областях изменений и рисков, что позволяет избежать задержки релизов в ожидании полных регрессионных наборов".

Возможности генеративного ИИ, используемые в кодировании и разработке ПО, должны стать для руководителей Devops и QA окончательным сигналом к тому, чтобы инвестировать в непрерывное тестирование, централизовать тестовые данные, улучшить тестовое покрытие и увеличить частоту тестирования. Для достижения этих целей платформы тестирования должны добавить возможности генеративного ИИ.

Рекомендуем прочитать: Смартфоны теряют популярность: куда движется рынок?

terazus.com є майданчиком для вільної журналістики. Матеріали користувачі завантажують самостійно. Адміністрація terazus.com може не розділяти позицію блогерів і не відповідає за достовірність викладених ними фактів.

Шановні користувачі, просимо вас шановливо ставитися до співрозмовників в коментарях, навіть якщо ви не згодні з їх думкою!



Другие статьи рубрики

В цей день 21 серпня

2025

2024

2023