Автоматизированные тесты


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

Структура

Тест — это набор тест-кейсов, каждый из которых имитирует отдельный диалог. Тест-кейсы находятся внутри корневого тега <test>. Сами тест-кейсы указываются внутри тегов <test-case>.

Каждый тест-кейс описывает новую сессию и нового клиента, поэтому содержимое $session и $client очищается перед началом каждого тест-кейса.

В тест-кейсах используются специальные теги, некоторые из них повторяют теги JAICP DSL.

Подробнее о тегах, которые используются в XML-тестах

Видеокурс по JAICP. Автотесты: настройка и теги

Пример

<test>
    <test-case id="Приветствие">
       <q>Привет</q>
       <a>Привет! Я бот Алина.</a>
    </test-case>

    <test-case id="Прощание">
        <q>Пока</q>
        <a>Рада была помочь. Пока!</a>
    </test-case>
</test>

Запуск тестов

По умолчанию выполняются все тесты из файлов в папке test. Вы можете изменить это поведение в секции tests файла chatbot.yaml, а также вручную задать режим, в котором будут запущены тесты при публикации:

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

Выбранный режим запоминается и используется при дальнейших публикациях бота, пока не будет изменен.