Тестирование в проекте

Тестирование — критически важный этап разработки, который гарантирует, что ваши динамические сценарии работают корректно и обрабатывают все пограничные случаи. Платформа предоставляет несколько мощных инструментов для отладки.

Эта статья посвящена методам тестирования. Для глубокого понимания объекта context, его структуры и способов установки фактов, пожалуйста, обратитесь к основной документации: Обработка данных и доступ к контексту.

Основные инструменты тестирования

1. Дебаг-чат

Ваш главный инструмент — это дебаг-чат. Он не просто показывает ответы бота, но и предоставляет детальную информацию о том, как было обработано ваше сообщение: какое намерение распозналось, какие сущности были извлечены и с какой уверенностью.

2. Установка фактов вручную

Динамические сценарии часто зависят от контекста — данных о пользователе, которые обычно приходят по API. Чтобы не делать реальные API-запросы при каждом тесте, вы можете имитировать эти данные.

  • Как это работает: В дебаг-чате нажмите кнопку «Факты» и вставьте JSON-объект с данными, которые вы хотите добавить в сессию. Эти данные будут доступны в сниппетах через объект context.

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

    // Тестируем ветку для VIP
    { "user_status": "vip" }
    // Тестируем ветку для обычного пользователя
    { "user_status": "regular" }

3. Вывод данных из сниппета

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

Пример отладки сниппета

Предположим, вы получаете данные по API и хотите проверить, что приходит в ответ.

4. Проверка переменных в текстовых реакциях

Вы также можете быстро проверить значение любого факта или сущности, выведя его напрямую в текстовой реакции с помощью Mustache-синтаксиса ({{...}}).

  • Пример: После сниппета, который установил факт user_balance, добавьте текстовую реакцию со строкой:

    Отладка: Баланс пользователя - {{user_balance}}.

Последнее обновление