Часть 4. Расширение и масштабирование · Глава 13
ИИ-агенты в тестировании
Цели раздела
4 пунктаК концу раздела вы сможете:
- Отличать задачи для промпта, цепочки промптов и агента — и не подключать агента «ради моды».
- Понимать архитектуру агента (инструменты, память, цикл планирования) и роль HITL в QA.
- Знать классы агентов для тестирования и типовые сценарии по ролям в команде.
- Применять чек-листы запуска и ограничения безопасности перед автономными действиями агента.
Для junior: достаточно разделов о выборе «промпт vs агент», классах агентов и ограничениях; остальное — после месяца работы с шаблонами из главы 7.
Для разных уровней
Для junior: Прочитайте разделы «Агент vs чат», «Классы агентов для QA» и «Безопасность и human approval». Остальное — после месяца работы с промптами из главы 7.
Для middle+: Читайте полностью.
Промпт, цепочка промптов или агент?
Прежде чем подключать агента, проверьте, что задача действительно многошаговая и требует инструментов или повторяющегося цикла решений.
| Задача | Что выбрать | Почему |
|---|---|---|
| Сгенерировать 10 тест-кейсов по одному требованию | Промпт | Один или два запроса, без автономного цикла |
| Разобрать требования → сгенерировать кейсы → собрать матрицу покрытия | Цепочка промптов | Несколько шагов, но без вызова внешних инструментов из «чёрного ящика» |
| Мониторить PR, анализировать изменения, запускать проверки, заводить тикеты | Агент | Много шагов, инструменты, решения по ходу |
| Сравнить скриншот с макетом (визуальный разбор) | Мультимодальный промпт (Глава 8) | Обычно один запрос с изображением |
Правило: если задача закрывается 1–3 промптами и без обращения к API, файловой системе или браузеру в автономном режиме — начинайте с промпта или цепочки. Агент оправдан, когда нужны инструменты, ветвления и несколько итераций под контролем HITL.
Агент vs чат: принципиальная разница
Формула
Агент = LLM + Tools + Memory + Planning Loop + (опционально) другие агенты
Нажмите на карточку «Чат» или «Агент» — появится пояснение. Ниже — блок Chaining vs Agentic.
- 1Задача от QA
- 2Агент
- 3Инструмент (браузер / API / файлы)
- 4Результат инструмента
- 5Достаточно данных?
- 6Ответ QA-инженеру
Если данных недостаточно — агент снова выбирает инструмент
Цепочка промптов vs агентный workflow: Chaining — линейный конвейер, жёсткое ветвление, нет инструментов, высокий контроль. Agentic — агент решает следующий шаг, динамическое ветвление, есть вызов инструментов, ниже контроль. В QA: chaining — многошаговая генерация документов; agentic — исследовательское тестирование, triage.
Минимальный агент за 20 минут
Цель: не «настоящий» LangGraph-агент, а один автоматизированный шаг: файл лога → черновик баг-репорта через локальную LLM. Без фреймворков — только Python и HTTP API Ollama.
Предусловия: Ollama запущен (ollama serve), модель скачана (ollama pull qwen3:8b или qwen3.5:9b). Время: ~5 мин подготовка + ~5 мин скрипт + ~10 мин проверка вывода.
1. Сохраните обезличенный фрагмент лога в error.log (пример):
2026-05-20T10:01:02Z ERROR payment-service user_id=[USER_42] card_declined code=insufficient_funds
2026-05-20T10:01:02Z INFO payment-service retry=1 status=failed2. Скрипт log_to_bug.py:
#!/usr/bin/env python3
import json
import pathlib
import urllib.request
LOG_PATH = pathlib.Path("error.log")
PROMPT = """Ты — QA Engineer. По фрагменту лога составь ЧЕРНОВИК баг-репорта.
Ограничения: только факты из лога; не выдумывай версии ПО и окружение;
если данных не хватает — блок [НЕ ХВАТАЕТ ДАННЫХ].
Формат: Summary, Steps, Expected, Actual, Environment (если есть в логе), Notes for dev.
Лог:
---
{log}
---
"""
def main() -> None:
log_text = LOG_PATH.read_text(encoding="utf-8")
body = {
"model": "qwen3:8b",
"prompt": PROMPT.format(log=log_text),
"stream": False,
"options": {"temperature": 0.2},
}
req = urllib.request.Request(
"http://127.0.0.1:11434/api/generate",
data=json.dumps(body).encode(),
headers={"Content-Type": "application/json"},
method="POST",
)
with urllib.request.urlopen(req, timeout=120) as resp:
data = json.loads(resp.read().decode())
print(data["response"])
pathlib.Path("bug_draft.md").write_text(data["response"], encoding="utf-8")
if __name__ == "__main__":
main()3. Запуск: python3 log_to_bug.py → откройте bug_draft.md.
4. HITL (обязательно): сверьте каждый факт с error.log; severity и окружение — только после вашего решения. Скрипт = инструмент, не агент с циклом планирования; следующий шаг к «настоящему» агенту — добавить ветвление («нужны ещё логи?») и лимит итераций (см. разделы «HITL и точки контроля» и «Failure Modes агентов» ниже).
Классы агентов для QA
Нажмите на тип агента — увидите применение
Single-Agent vs Multi-Agent
Single — одна задача, один набор инструментов. Multi — оркестратор делегирует специализированным агентам; оправдан при параллельном исследовании. Multi-agent сложнее в отладке; начинать с single-agent.
Когда агент, когда промпт
Нажмите на карточку, чтобы выделить
HITL и точки контроля
Уровни: нажмите на уровень, чтобы развернуть
По типам инструментов
Практические сценарии по ролям
Нажмите на роль, чтобы увидеть сценарии
Кейсы применения (кратко)
Нажмите на кейс — откроется пояснение
Шаблоны заданий агенту
Нажмите на блок, чтобы развернуть. Полные шаблоны — в Приложении H.
Чек-лист запуска агента (3 фазы)
Разверните фазу и отмечайте пункты по мере выполнения
Безопасность и human approval
Агенты для QA: применение, не хайп
- «Агенты заменят тестировщиков»
- «Протестируй всё»
- «Cursor/Copilot сделают за вас»
- Агент — делегирование рутины, не ответственности
- HITL обязателен
- Агент требует больше контроля
- Реалистично — ускорение исследования на 30–60%, не полная автоматизация
- Cursor/Continue/Copilot — coding assistants, не полноценные агенты
Failure Modes агентов
Нажмите на тип сбоя — увидите причину и меру
Материалы к главе
LangGraph: Multi-Agent Workflows
Архитектура multi-agent, supervisor, HITL.
Human-in-the-Loop for AI Agents (Permit.io)
Паттерны HITL для агентов.
OWASP Top 10 for LLM Applications 2025
Безопасность LLM-приложений и агентов.
Build a LangGraph Multi-Agent System (LaunchDarkly)
Пошаговый туториал по multi-agent системе.
HITL in AI Workflows (Zapier)
Human-in-the-loop в автоматизациях с ИИ.
Microsoft Agent Framework — Human-in-the-Loop
HITL в workflow агентов Microsoft.
NVIDIA — AI Agents for Test Case Creation
Агенты для автоматизации создания тест-кейсов.
Kobiton — AI Testing Agents Guide
Обзор агентов в софтверном тестировании.
DevAssure — AI Agents in Software Testing
Практики применения агентов в QA.
OWASP Top 10 for LLM — Quick Guide (Mend.io)
Краткий разбор OWASP Top 10 для LLM (2025).