Последнее время почти любой мой диалог с русскоязычными и англоязычными инженерами по тестированию выглядит так:

— Вижу у вас в профиле тестирование AI-приложений. 
— Я: Да.
— Имеется в виду использование AI-тулов для тестирования?
— Я: Нет, это разные вещи.

Сейчас в разработке буквально каждый квартал происходят какие-то изменения, связанные с AI. Поэтому сложно отличить хайп от того, что компании уже фактически используют в проде. Мне удалось поучаствовать в тестировании AI-приложений на нескольких международных проектах и понять, что действительно уже обрело жизнь.

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

Уровень 0️⃣ - Бытовое использование AI

Использование AI-моделей на уровне обычных и продвинутых промптов для выполнения рабочих активностей:

  • Помощь в анализе документации, подготовке тест-кейсов и написании баг-репортов, применении подходов тест-дизайна, генерации идей по тестовым стратегиям. 

  • Генерация тестовых данных

  • “Консультирование” по работе с SQL, API, Postman, Git и т.д.

  • Помощь в подготовке отчетов

  • И т.д.

Инструментарий: ChatGPT, DeepSeek, Gemini, для чуть более продвинутых - NotebookLM.

Ключевые вызовы: галлюцинации, качество промптов и данных.

Сложно представить себе IT-специалиста, который бы сейчас не пользовался AI на “бытовом уровне”. Учитывая, что простые смертные активно переходят на него - по некоторым данным, ежемесячное число пользователей ChatGPT уже превысило число использующих Википедию.

Уровень 1️⃣ - AI-тулы для тестирования

Использование специализированного AI-инструментария именно для Quality Assurance:

  • Подготовка тест-кейсов на базе документации и написание баг-репортов - только в отличие от предыдущего уровня, не на промптах, а автоматизации “из коробки”

  • Генерация сценариев для различных фреймворков (например, Selenium, Appium, Playwright, Cypress) на основе пользовательских историй

  • Оптимизация тестовых прогонов

  • Исследовательское тестирование, тестирование безопасности и т.д.

Инструментарий включает как “обычные” AI-инструменты, так и использование готовых AI-агентов: Tricentis Testim, Selenium AI, Postman AI Tool Builder, Postman AI Agent Builder, Applitools, Mabl, Functionize, Parasoft, ReTest, Appvance AIQ, TestCraft, Autify, Leapwork и др.

Ключевые вызовы: сложность интеграции, ложные срабатывания, детерминированность, устойчивость тестов, экономия затрат.

Вряд ли AI заменит тестировщика раньше, чем он заменит разработчиков. Доставать требования из “кожаных мешков” он пока не научился. Да и пока приложениями пользуются живые люди, кто-то из живых все-таки должен будет глянуть на функционал перед выходом в прод. Но это не повод не учиться использованию AI-инструментов для облегчения типовых задач AI-инженера.

Уровень 2️⃣ - Vibe-coding для автоматизации

Использование инструментария разработчиков для повышения эффективности написания кода классической автоматизации:

  • Генерация фрагментов кода, автодополнение, рефакторинг

  • Помощь в написании unit-тестов и генерировании стабов/моков

  • Самодокументирование

Инструментарий: Copilot, Context, Cursor, Gemini Code и др.

Ключевые вызовы: AI не умеет разрабатывать хорошую архитектуру, любит плодить в коде дубли сущностей и частенько его несет вообще не туда; атрофия навыков.

Если держать в голове слабые стороны AI, то он становится хорошим напарником в написании несложной автоматизации новичком, понижая порог вхождения. Для опытного тестировщика позволяет ощутимо повысить КПД работы.

Уровень 3️⃣ - Тестирование AI-приложений черным ящиком

- это использование как классических, так и новых подходов для тестирования AI-функционала, который был интегрирован в обычное приложение. То есть здесь речь про ситуацию, когда AI является дополняющей функциональностью приложения, а не основной. Например, AI-чат или visual search. Основная задача - проверка корректности выходных данных без изучения внутренней логики, дообучения и т.д.

  • Функциональное offline тестирование различных AI (бинарный вывод, семантический поиск, генерация, распознавание/классификация); online тестирование; интеграционное тестирование.

  • Нефункциональное тестирование (тестирование стоимости AI-модели, стоимости реализации, прослеживаемости и т.д.).

Инструментарий: адаптация классических техник тестирования, классических тестовых фреймворков с внедрением AI-метрик, тестирование LLM-as-a-Judge; специализированные фреймворки.

Ключевые вызовы: необходимость ранней автоматизации, детерминированность вывода, стоимость ресурсов.

Сейчас в десятках тысяч компаний по всему миру тестировщики сталкиваются с тем, что им приходится искать подходы для тестирования того, что раньше никто никогда не тестировал. Рано или поздно с этим придется столкнуться каждому QA-инженеру.

Уровень 4️⃣ - Тестирование AI-моделей серым ящиком

Здесь речь идет про тестирование специализированных AI-моделей. Для этого необходимо хотя бы частичное знание их внутренней архитектуры и данных, на которых они были обучены. Целью является понимание того, как изменения во входных данных или параметрах модели влияют на её поведение.

Сюда могут входить:

  • Проверка данных для обучения: валидность (validity), полнота (сompleteness), точность (accuracy), согласованность (consistency), уникальность (uniqueness), статистический анализ и обнаружение аномалий, свежесть (freshness), проверка объема данных (volume tests)

  • Проверка на предвзятость (bias)

  • Тестирование производительности (performance testing): скорости (speed), пропускной способности (throughput), масштабируемости (scalability)

Инструментарий: DeepEval, наборы бенчмарков (например, F1-score, Precision, Recall, BLEU, ROUGE), специализированные фреймворки и библиотеки для объяснимого AI (Explainable AI, XAI - LIME, SHAP), Promptfoo, Evidently AI, RAGAS Quality Suite (при использовании RAG).

Ключевые вызовы: качество данных, борьба со смещением, переобучение, интерпретируемость, предвзятость (bias), особенно в чувствительных отраслях (медтех, финтех), особо высокая стоимость ресурсов.

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

Уровень 5️⃣ - От автоматизации - к самооавтоматизации

Разработка QA-инженером автономных AI-агентов, которые способны самостоятельно проектировать, реализовывать и запускать целые сценарии “под ключ” - от их проектирования, формирования тестовых данных, приоритизации и выполнения тестов до автоматического анализа результатов и адаптации к изменениям в тестируемой системе.

Здесь могут быть следующие виды тестирования:

  • Целей и задач (goal and task testing): достижение цели, выполнение задач, планирование и принятие решений

  • Взаимодействия со средой (environment interaction testing): восприятие (perception), действия (action execution), обратная связь (feedback handling)

  • Диалога и коммуникации (dialogue and communication testing): понимание языка, генерация ответов, управление контекстом

  • Обработки ошибок и исключительных ситуаций (error handling and exception testing): проверка реакции на неожиданные события или ошибки, способность восстанавливаться

  • Многоагентных систем (multi-agent system testing): координация, сотрудничество, конкуренция

  • Обучаемости и адаптивности (learnability and adaptability testing): эффективность обучения, обобщение

Инструментарий: Агентские и многоагентские (MAC) фреймворки (LangChain, LlamaIndex, AutoGPT), библиотеки для машинного обучения (TensorFlow, PyTorch) для обучения агентов, фреймворки для обучения с подкреплением (Reinforcement Learning), среды для симуляции взаимодействия с тестируемыми системами, инструменты оркестрации.

Ключевые вызовы: контролируемость, самообучение, самовосстановление, сложность отладки.

Не можешь предотвратить - возглавь. Может быть, когда-нибудь AI и заменит линейного специалиста по тестированию. Но специалиста с названием “руководитель департамента QA-AI-агентов” (где он единственный представитель вида homo sapiens) - вряд ли

Скорее всего, сейчас вы на уровне 0 и уже пробовали что-то делать на уровне 1 (AI-тулы для тестирования) или уровне 2 (Vibe-coding). Так это или нет - в любом случае, впереди много интересного!

Продолжение

В ближайшую неделю в отдельном эфире чуть подробнее обсудим все шесть уровней AI-квалификации тестировщика с практической точки зрения.

А в следующей статье "Как тестировать AI на практике - Черный ящик, семантический поиск" поговорим про очень интересное тестирование - когда мы тестируем AI при помощи другого AI. Так называемый LLM-as-a-Judge.

Анонсы эфира, выхода бесплатного учебника по тестированию AI и следующих статей цикла - в телеграм-каналах:
Становимся тестировщиком - анонсы статей по Black-Box тестированию AI.
Становимся продвинутым QA - анонсы статей по Gray-Box тестированию AI.

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