Последнее время почти любой мой диалог с русскоязычными и англоязычными инженерами по тестированию выглядит так:
— Вижу у вас в профиле тестирование 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.