Привет, Habr! Прошло уже некоторое время, и AI довольно быстро стал интегрироваться в инструменты и пускать корни во многие профессии, QA не исключение. Здесь точно есть что оптимизировать, ведь у тестировщиков всегда много рутинных задач, которые требуют внимательности, но не слишком сложны по своей сути.

Прогресс, как всегда, не остановить, но что сейчас представляют собой интеграции с AI и насколько это рабочие решения?

Инструменты для интеграции AI в Selenium

Сам Selenium не интегрирован из коробки с AI, но для него существует ряд фреймворков, которые, в свою очередь, интегрированы с ним

Testim

  • Интеграция AI: Testim начал использовать AI в 2016 году.

  • Реализация:

    • Автоматическое создание тестов: AI анализирует действия пользователя и автоматически создает тесты, упрощая настройку тестирования.

    • Самовосстановление тестов (Self-healing): AI автоматически корректирует тесты при изменениях в пользовательском интерфейсе, что уменьшает количество флаки-тестов.

    • Умная идентификация элементов (Smart Locators): AI использует машинное обучение для надежного распознавания элементов на странице, даже при изменении их атрибутов.

  • Недостатки: Возможны ложные срабатывания и ошибки в корректировке тестов, особенно при значительных изменениях в UI.

  • Подробнее о Testim

Mabl

  • Интеграция AI: Mabl представил свою AI-платформу в 2018 году.

  • Реализация:

    • Автоматическое создание тестов: AI анализирует поведение пользователя и создает тесты, что значительно упрощает процесс настройки тестирования.

    • Самовосстановление тестов (Self-healing): AI корректирует тесты при изменениях в пользовательском интерфейсе, что повышает стабильность автоматизации.

    • Анализ результатов тестов: AI анализирует результаты выполнения тестов, выявляет аномалии и предлагает рекомендации по улучшению тестовых сценариев.

  • Недостатки: Возможны ложные срабатывания и сложности с адаптацией AI к специфическим требованиям проектов.

  • Подробнее о Mabl

Functionize

  • Интеграция AI: Functionize внедрил AI для автоматизации тестирования в 2017 году.

  • Реализация:

    • Автоматическое создание тестов: AI анализирует тестовые сценарии и данные, автоматически создавая и поддерживая тесты.

    • Анализ и оптимизация тестов: AI анализирует тесты и оптимизирует их выполнение, что улучшает их эффективность.

  • Недостатки: Высокие затраты на внедрение и обучение, а также возможные проблемы с адаптацией AI к специфическим требованиям проектов.

  • Подробнее о Functionize

SeleniumBase

  • Интеграция AI: SeleniumBase — это фреймворк на базе Selenium, который интегрирует AI для улучшения автоматизации тестирования.

  • Реализация:

    • Умные ожидания (Smart Waits): AI автоматически управляет ожиданиями, улучшая стабильность тестов.

    • Самовосстановление тестов (Self-healing): AI корректирует тесты при изменениях в интерфейсе, что уменьшает количество флаки-тестов.

    • Улучшенная отчетность: AI анализирует результаты тестов и предоставляет подробные отчеты, что помогает в обнаружении и устранении проблем.

  • Недостатки: Возможны ложные срабатывания и необходимость интеграции дополнительных инструментов для полной функциональности.

  • Подробнее о SeleniumBase

Postman

  • Интеграция AI: Postman начал внедрять функции, основанные на AI, в 2020 году.

  • Реализация:

    • Auto-suggestions: AI помогает пользователям создавать запросы и тесты, предлагая автозаполнение для параметров и значений на основе ранее введенных данных.

    • Smart Testing: AI анализирует результаты тестов и предлагает дополнительные тестовые сценарии или параметры, которые могут быть важны для более тщательной проверки API.

    • Anomaly Detection: AI выявляет аномалии в результатах тестов, помогая пользователям быстрее находить и устранять потенциальные проблемы.

  • Недостатки:

    • Ложные срабатывания: AI может ошибочно идентифицировать нормальные результаты как аномалии, что требует ручной проверки.

    • Ограниченная настройка: Возможности AI могут быть ограничены в зависимости от сложности и специфики тестируемых API, что требует дополнительной настройки и вмешательства человека.

    • Зависимость от данных: Эффективность AI сильно зависит от качества и объема исторических данных тестирования, что может быть проблематично для новых проектов с небольшим количеством данных.

  • Подробнее о Postman

Katalon Studio

  • Интеграция AI: В 2020 году Katalon Studio начал внедрение функций, основанных на искусственном интеллекте.

  • Реализация:

    • Smart Wait: AI автоматически анализирует время загрузки элементов и динамически управляет задержками, улучшая стабильность тестов.

    • Self-healing: AI автоматически находит альтернативные элементы при изменениях в пользовательском интерфейсе, снижая количество флаки-тестов.

    • Test Suite Recommendation: AI анализирует результаты тестов и рекомендует оптимальные наборы тестов для выполнения, что помогает сократить время на тестирование.

  • Недостатки:

    • Сложность настройки: Некоторые функции требуют значительных усилий по настройке и калибровке для достижения оптимальных результатов.

    • Ложные срабатывания: Как и в других инструментах, AI может ошибаться, что требует вмешательства человека для корректировки.

    • Стоимость: Использование продвинутых AI-функций может увеличить общую стоимость инструмента.

  • Подробнее о Katalon Studio

SmartBear (TestComplete)

  • Интеграция AI: SmartBear начал добавлять функции на основе AI в TestComplete в 2018 году.

  • Реализация:

    • Оптическое распознавание символов (OCR): AI используется для распознавания текста в изображениях, что позволяет тестировать приложения с динамическим контентом и текстовыми элементами, которые не имеют уникальных идентификаторов.

    • Самовосстановление тестов (Self-healing): AI помогает автоматически корректировать тесты при изменениях в пользовательском интерфейсе, что снижает количество флаки-тестов и повышает стабильность автоматизации.

    • Распознавание образов (Image Recognition): AI используется для распознавания и взаимодействия с элементами интерфейса на основе их визуального представления, что полезно для тестирования приложений с нестандартными элементами UI.

    • Умные шаги (Smart Steps): AI анализирует повторяющиеся шаги в тестах и автоматически создает шаблоны для упрощения создания новых тестов и улучшения их повторяемости.

  • Недостатки:

    • Ложные срабатывания: AI может неправильно интерпретировать изменения в интерфейсе или текстовые элементы, что требует ручной проверки и корректировки.

    • Ограниченная поддержка специфических технологий: Несмотря на мощные функции, AI в TestComplete может не поддерживать некоторые специфические технологии или сложные сценарии, что требует дополнительной настройки.

    • Высокие затраты на внедрение: Внедрение и настройка AI-функций могут потребовать значительных затрат времени и ресурсов, особенно для сложных и крупных проектов.

  • Подробнее о TestComplete

В заключение

Основные проблемы AI-инструментов для автоматизации тестирования включают ложные срабатывания, сложности с адаптацией к специфическим требованиям проектов, высокие затраты на внедрение и настройку, зависимость от качества и объема данных, а также ограниченные возможности настройки. Да, это во многих случаях работает, но нюансов всё ещё очень много. О замене QA речи давно не идёт. Cейчас уже понятно, что Ai дал новый виток для адаптации специалистов в меняющихся технологиях. Это в первую очередь будет требовать более глубокой и разносторонней экспертизы.

Cкорее всего, в ближайшие годы улучшения затронут алгоритмы самовосстановления и распознавания элементов, увеличение точности и надежности AI-функций, а также снижение затрат за счет более интуитивных и адаптивных решений. Что же будет в реальности, нам только предстоит увидеть.

Комментарии (2)


  1. strelkove
    05.06.2024 06:31
    +1

    Собственно, главная проблема AI - это как раз ложные срабатывания. И поэтому непонятно, как будет быстрее, а, главное, качественнее провести тесты - "руками" или проверять за AI.


  1. RealLazyCat
    05.06.2024 06:31
    +1

    пока все очень сырое. условный мидл сделает лучше, быстрее, надежнее. но, безусловно, ждем развития таких систем