Агенты
Агент — это конфигурируемый сценарий для Ассистента, который позволяет автоматизировать выполнение повторяющихся задач в проекте ТестОпс. Например, можно создать агента, который будет генерировать тест-кейсы на основе текстового описания.
Агента можно создать с нуля, добавить из библиотеки агентов или продублировать в текущем проекте. Создавая коллекцию агентов, вы формируете собственную базу знаний, которая помогает:
- систематизировать лучшие практики работы с ИИ;
- эффективно управлять накопленным опытом и методиками команды;
- масштабировать экспертизу команды на новые проекты и задачи.
Примечание
Чтобы создать агента, необходима проектная роль «Владелец проекта» или глобальная роль «Администратор».
Создание агента
Чтобы создать агента:
Перейдите в ваш проект ТестОпс → раздел Настройки → Ассистент.
Нажмите + Агент → Создать агента.
Заполните поля:
- Название — введите название, по которому можно легко определить назначение агента (например, Генерация тест-кейсов, Создание веб-тестов).
- Описание — введите информацию, которая сохранит контекст и упростит выбор из похожих агентов. Опишите, зачем нужен агент, какую задачу он решает и какие данные ожидает на входе.
- Среднее время выполнения задачи агента вручную (в минутах) — введите среднее количество времени в минутах, за которое человек справляется с задачей, которую решает агент (например, создание тест-кейса вручную занимает около 30–40 минут).
- Промпт — введите человекочитаемый запрос, в котором подробно описан необходимый контекст и ожидаемый результат. Это основной блок, который определяет поведение модели в рамках агента.
- Инструменты ТестОпс — нажмите на выпадающий список и поставьте галочки напротив инструментов ТестОпс, которые могут потребоваться агенту для изменения данных в проекте.
MCP-серверы — нажмите
+и выберите все MCP-серверы, которые можно использовать в чате Ассистента. Подробнее о подключении к MCP-серверам внешних систем см. Интеграция с внешним MCP-сервером.Нажмите Создать.
Созданный агент появится в списке агентов и станет доступен для запуска в чатах Ассистента.
Совет
Вы можете указать дополнительный контекст для работы всех агентов в инстансе, чтобы во время их запуска Ассистент учитывал процессы вашей команды. Подробнее см. Контекст для Ассистента.
Доступные инструменты ТестОпс для агента
Инструмент ТестОпс — это функциональная возможность ТестОпс, которую может вызывать агент. Благодаря инструментам ТестОпс модель может не только анализировать и генерировать текст, но и создавать или обновлять сущности внутри вашего проекта:
Примечание
Инструменты для чтения доступны каждому агенту по умолчанию и не отображаются в списке Инструменты ТестОпс при создании агента. Если агенту не нужно изменять данные в проекте, список инструментов можно оставить пустым.
Инструменты для чтения
| Инструмент | Назначение |
|---|---|
testops_find_testcases | Поиск тест-кейса по основным и дополнительным метаданным, в том числе с возможностью запроса сгенерированного кода автотеста |
testops_get_issue_details | Получение подробной информации о задаче из таск-трекера, связанной с тест-кейсом |
testops_get_requirement_details | Получение подробной информации о требовании, связанном с тест-кейсом |
testops_find_testcase_snapshots | Получение списка сохраненных версий тест-кейса |
testops_get_testcase_snapshot | Получение содержимого конкретной версии тест-кейса |
Инструменты для записи
| Инструмент | Назначение |
|---|---|
testops_create_testcase | Создание тест-кейса |
testops_update_testcase | Обновление тест-кейса, в том числе перемещение между папками и категориями группировок по кастомным полям |
testops_add_testcase_comment | Добавление комментария к тест-кейсу |
testops_create_mute | Перенос тест-кейса в карантин |
testops_delete_mute | Перенос тест-кейса из карантина |
testops_mark_testcase_flaky | Добавление отметки Флаки в нестабильном тест-кейсе |
testops_unmark_testcase_flaky | Снятие отметки Флаки с тест-кейса |
testops_delete_testcases | Перемещение тест-кейса в раздел Корзина |
testops_restore_testcases | Восстановление тест-кейса из раздела Корзина |
testops_run_testcases | Запуск автоматизированных тест-кейсов через настроенные джобы |
testops_restore_testcase_snapshot | Восстановление выбранной версии тест-кейса |
Важно
Для работы инструментов:
testops_mark_testcase_flakyиtestops_unmark_testcase_flaky— укажите для типа метаданных Флаки источник обновления Тест-кейс;testops_find_testcase_snapshots,testops_get_testcase_snapshotиtestops_restore_testcase_snapshot— включите версионирование ручных тест-кейсов в проекте ТестОпс.
Примеры агентов
Примеры агентов показывают, как автоматизировать типовые задачи тестирования. Для каждого примера указаны инструменты ТестОпс и промпт, которые можно использовать при создании агента.
Важно
Приведенные ниже примеры носят ознакомительный характер. Их поведение зависит от конкретной модели.
Создание тест-кейса
Агент создает тест-кейс в ТестОпс на основе краткого описания от пользователя.
Для этого агента выберите инструмент ТестОпс testops_create_testcase и используйте промпт из примера ниже.
Пример промпта
text
# Цель
Создать структурированный тест-кейс в ТестОпс на основе неструктурированного описания от пользователя.
# Вход
Краткое описание от пользователя. Варианты: описание теста, требование, задача из таск-трекера.
# Шаги (выполнять строго по порядку)
1. Запроси у пользователя данные для теста. Не проси расписывать шаги: формулировать их — твоя задача.
2. Проанализируй данные и предложи черновик теста по шаблону ниже.
3. Задай уточняющие вопросы, если информации недостаточно.
4. Согласуй черновик с пользователем.
5. Создай тест-кейс в ТестОпс и выведи краткую информацию о нем со ссылкой.
# Шаблон тест-кейса
- Название — емкое, точно отражающее суть проверки.
- Описание — не дублирует шаги; емкое, понятное; описывает цель тестирования без слова «цель».
- Шаги — каждый шаг атомарный, один конкретный шаг.
- Кастомные поля — одно–три слова, емкие. Обязательно: Feature, Story. Остальные — по необходимости.
# Правила
- Первый шаг всегда: «Открываем главную страницу».
- Сценарий последовательный: нельзя сразу вводить логин/пароль — сначала вызови форму (например, кнопкой «Войти»).
- Каждый шаг детерминирован для браузера: «Нажимаем на кнопку **X**», «Вводим в поле **Y** значение _Z_».
# Важно
- Если пользователь подтвердил создание теста — сразу создавай, не переспрашивай.
- Обязательно уточни ожидаемый результат. Если пользователь не указал — предложи свой вариант.Стилистическое улучшение тест-кейса
Агент дорабатывает существующий тест-кейс: делает шаги детерминированными, добавляет недостающие элементы и приводит к единому стилю. Модель читает сценарий, предлагает улучшенный вариант и обновляет тест-кейс в ТестОпс.
Для этого агента выберите инструмент testops_update_testcase и используйте промпт из примера ниже.
Пример промпта
text
# Цель
Улучшить существующий тест-кейс в ТестОпс: сделать его подробным, детерминированным и понятным для любого тестировщика.
# Вход
Тест-кейс с общим направлением проверки. ID тест-кейса — из контекста или от пользователя.
# Шаги (выполнять строго по порядку)
1. Получи сценарий тест-кейса. Если ID неизвестен — уточни у пользователя.
2. Проанализируй данные и предложи черновик по шаблону ниже.
3. Задай уточняющие вопросы, если информации недостаточно.
4. Согласуй черновик с пользователем.
5. Обнови тест-кейс в ТестОпс и выведи краткую информацию о нем со ссылкой.
# Шаблон (строгие правила)
- Детерминированность: каждый шаг — конкретное действие в браузере. Формат: [Глагол] [Объект] «[Значение]».
Правильно: «Нажимаем кнопку **Войти**. Вводим в поле **Email** значение _test@example.com_».
Неправильно: «Авторизоваться в системе. Заполнить форму».
- Последовательность: не пропускай шаги навигации.
- Первый шаг всегда: «Открываем главную страницу [URL]». Если URL не указан — используй [URL_приложения].
- Теги: обязательно добавь тег «AI».
- Название — емкое, точно отражающее суть (например, «Проверка успешной авторизации с валидными данными»).
- Описание — человекочитаемое, без слова «цель», не дублирует шаги.
- Кастомные поля: Feature и Story — обязательно, кратко (до 3 слов).
- Ссылки: если поле пустое — добавь ссылку на статью по теме на Википедии.
# Важно
Если пользователь подтвердил изменения — сразу обновляй, не переспрашивай.Параметризация тест-кейса
Агент выявляет в сценарии повторяющиеся значения, предлагает параметры и обновляет тест-кейс с использованием параметризации. Модель анализирует шаги, согласует изменения с пользователем и применяет их в ТестОпс.
Для этого агента выберите инструмент testops_update_testcase и используйте промпт из примера ниже.
Пример промпта
text
# Цель
Выявить в сценарии тест-кейса значения для параметризации, создать параметры и обновить тест-кейс в ТестОпс.
# Вход
ID тест-кейса — из контекста или запроси у пользователя.
# Шаги (выполнять строго по порядку)
1. Получи сценарий тест-кейса по ID.
2. Найди в сценарии значения, указанные в явном виде и подходящие для параметризации.
3. Если параметров нет — сообщи об этом пользователю.
4. Если параметры найдены: создай таблицу имя/значение, покажи пользователю таблицу и шаги с заменой значений на {{название_параметра}}. Проверь общие шаги — если там есть те же параметры, используй их названия.
5. Спроси, согласен ли пользователь обновить тест-кейс.
6. Если согласен — установи параметры и обнови тест-кейс в ТестОпс.
# Параметры
Параметры передаются массивом: название параметра и его значения.
# Важно
Если пользователь подтвердил обновление — сразу обновляй, не переспрашивай.Добавление общих шагов в тест-кейс
Агент заменяет повторяющиеся последовательности шагов в тест-кейсе на общие шаги. Модель сравнивает сценарий с библиотекой общих шагов, предлагает замены и обновляет тест в ТестОпс.
Для этого агента выберите инструменты testops_create_sharedstep, testops_update_testcase и используйте промпт из примера ниже.
Пример промпта
text
# Цель
Заменить повторяющиеся последовательности шагов в тест-кейсе на общие шаги ТестОпс.
# Вход
ID тест-кейса — из контекста или от пользователя.
# Шаги (выполнять строго по порядку)
1. Получи сценарий тест-кейса по ID.
2. Получи список общих шагов проекта (без фильтра).
3. Найди в сценарии последовательности, которые можно заменить на общие шаги.
4. Покажи пользователю, какие шаги можно заменить.
5. Согласуй изменения с пользователем.
6. Обнови тест-кейс в ТестОпс.
# Правила
- Выполняй шаги строго по порядку, не пропускай этапы.
- Указывай тип шага (обычный или общий) при обновлении — пользователю об этом не сообщай.
# Важно
Если пользователь подтвердил изменения — сразу обновляй, не переспрашивай.Создание дефекта для результата тест-кейса
Агент создает дефект или связывает существующий дефект с неуспешным результатом теста. Модель анализирует логи теста, предлагает причину сбоя, при необходимости создает дефект с правилом автоматизации и привязывает его к результату в ТестОпс.
Для этого агента выберите инструменты testops_create_defect, testops_link_defect и используйте промпт из примера ниже.
Пример промпта
text
# Цель
Создать новый дефект или связать существующий дефект с результатом теста в ТестОпс.
# Вход
ID результата теста — из контекста или от пользователя.
# Шаги (выполнять строго по порядку)
1. Получи лог выполнения теста по ID.
2. Предложи пользователю возможную причину падения с контекстом.
3. Согласуй причину с пользователем.
4. Получи список существующих дефектов (без фильтра).
5. Проверь, подходит ли один из дефектов для этого сбоя.
6. Если подходящего дефекта нет: предложи черновик, согласуй с пользователем, создай дефект в ТестОпс.
7. Если подходящий дефект есть: согласуй с пользователем и используй его.
8. Создай или проверь матчер и привяжи дефект к результату теста:
- если в дефекте уже есть матчер — проверь, подходит ли он к сообщению об ошибке;
- если не подходит — предложи новый матчер, согласуй с пользователем;
- привяжи дефект к результату теста с матчером.
# Дефект
- Название — емкое, четко отражающее суть проблемы.
- Описание — шаги воспроизведения, ожидаемый и фактический результат в человекочитаемом виде. Техническую информацию (**class**, **method**, **xpath** и т.п.) вынеси в отдельную секцию «Техническая информация».
# Матчер
- Используй только **messageRegexp**, не используй **traceRegexp**.
- **messageRegexp** — достаточно общий, но не слишком широкий и не на все сообщение.
- При привязке всегда передавай матчер (созданный или существующий), иначе другие результаты не разметятся.
# Важно
Если пользователь подтвердил действие — сразу выполняй, не переспрашивай.Запуск автоматизированных тест-кейсов
Агент запускает автоматизированные тест-кейсы в CI-системе, с которой настроена интеграция. Модель находит нужные тест-кейсы, уточняет параметры запуска и создает запуск с помощью настроенных джоб ТестОпс.
Для этого агента выберите инструмент testops_run_testcases и используйте промпт из примера ниже.
Пример промпта
text
# Цель
Запустить автоматизированные тест-кейсы в ТестОпс и сообщить пользователю ссылку на созданный запуск.
# Вход
Название, ID или описание тест-кейсов — из контекста или от пользователя.
# Шаги (выполнять строго по порядку)
1. Найди автоматизированные тест-кейсы по запросу пользователя.
2. Если тест-кейсы не найдены или среди них есть ручные — сообщи об этом и уточни запрос.
3. Уточни у пользователя параметры запуска: название запуска, теги, задачи, релиз, переменные окружения и параметры джоб (если нужны).
4. Покажи пользователю список тест-кейсов и параметры запуска для подтверждения.
5. После подтверждения запусти тест-кейсы и выведи ссылку на созданный запуск.
# Правила
- Запускай только автоматизированные тест-кейсы.
- Не запускай тесты без явного подтверждения пользователя.Анализ неуспешного результата автоматизированного теста
Агент анализирует неуспешный результат автоматизированного теста: получает вложения шагов, изучает логи и предлагает возможную причину сбоя.
Для этого агента не нужно выбирать инструменты ТестОпс — поиск результатов тестов и тест-кейсов доступен агенту по умолчанию. Используйте промпт из примера ниже.
Пример промпта
text
# Цель
Проанализировать причины неуспешного результата автоматизированного теста и предложить пользователю возможную причину сбоя.
# Вход
ID результата теста — из контекста или от пользователя.
# Шаги (выполнять строго по порядку)
1. Найди результат теста по ID и запроси вложения из шагов сценария и фикстур.
2. Изучи статус, шаги сценария, сообщения об ошибках и содержимое вложений (например, логи, HTML, Markdown).
3. Если нужно — найди связанный тест-кейс и запроси сгенерированный шаблон кода автоматизированного теста для контекста.
4. Предложи пользователю краткий анализ: на каком шаге упал тест, что отображается в логах и какая может быть причина.
# Правила
- Анализируй только текстовые вложения.
- Не придумывай детали, которых нет в данных результата теста.
