Skip to content
Gallery
Задание для сертификации партнеров JAICP
Share
Explore
Тестирование ботов

icon picker
Текстовый. Автоматическое тестирование.

Автоматическое тестирование.
В проекте реализовано автоматическое тестирование. Файл с кейсами автотестов находится в файлах:
test.xml - тестирование функциональных требований;
test_mail.xml - тестирование сервиса $mail отправки почты с помощью тега <mail>;
test_mock.xml - тестирование интеграции c внешним http ресурсом для проверки погоды с помощью тега <mockData>.
В конфигурационном файле chatbot.yaml тесты включены.
изображение.png
Автотесты
Функциональные требования
Номер Кейса 2
1
На старте машина представляется ботом туристической компании Just Tour
1
2
... и рассказывает о проблемах, в решении которых она может помочь
1
3
...после этого бот побуждает пользователя продолжить диалог
1
4
Если пользователь уже общался с ботом и представлялся, на старте машина обращается по имени
2
5
Если пользователь из любой точки диалога задает вопрос, цель которого узнать погоду
3
6
Запрос погоды из стейта /Name
3
7
Запрос погоды из стейта /Menu
3
8
Запрос погоды из стейта /Wheather
3
9
Запрос погоды из стейта /Trip
3
10
бот проверяет, что в запросе присутствуют указания на город/страну
7
11
бот проверяет, что в запросе присутствуют указания на дату
7
12
бот проверяет, что в запросе присутствуют указания на город/страну и дату
7
13
бот проверяет, что в предыдущем диалоге присутствуют указания на город (Москва)
6
14
бот проверяет, что в предыдущем диалоге присутствуют указания на дату (1 января)
4
15
бот проверяет, что в предыдущем диалоге присутствуют указания на город (Анкара) и дату (2 июля)
5
16
Недостающие параметры уточняются ботом в последующем диалоге с пользователем
4
17
После получения всех параметров бот отправляет данные в третью систему и выдает пользователю прогноз погоды в нужном городе или нужной стране на указанную дату (история)
6
18
После получения результатов:
19
Если температура воздуха низкая, задается вопрос, действительно ли он планирует поездку в страну с холодным климатом
4
20
Если температура воздуха высокая, задается вопрос, действительно ли он планирует поездку в страну с жарким климатом
5
21
Если температура воздуха средняя, задается вопрос, действительно ли он планирует поездку в страну с умеренным климатом
6
22
Если пользователь отвечает утвердительно, бот предлагает оформить тур в страну, которой человек интересовался
4
23
Если пользователь отвечает утвердительно, бот предлагает продолжить оформление уже начатой заявки
5
24
При продолжении с начатой заявкой названные пользователем параметры заявки спрашивать не надо
5
25
Если пользователь отвечает отрицательно, бот предлагает узнать погоду в другой стране или городе
6
26
Если пользователь в запросе изменяет параметры прогноза (например, "а в сочи?" выводится погода для новых данных
6
27
Если пользователь в запросе изменяет параметры прогноза (например, "а 1 января?" выводится погода для новых данных
6
28
Если пользователь хочет оформить тур:
29
из диалога о погоде: сразу переходим к заполнению заявки
4
30
иначе: бот спрашивает, в какой город/страну пользователю хочется отправиться
1
31
Если пользователь не определился со страной, бот начинает заполнение заявки, объявив, что с подбором поможет менеджер
2
32
Для заполнения заявки бот выясняет у пользователя:
5
33
количество людей в поездке
5
34
количество детей в поездке
5
35
бюджет поездки
5
36
дату начала поездки
1
37
длительность поездки
5
38
желаемую звездность отеля
5
39
имя пользователя
4
40
номер телефона для связи
2
41
комментарий для менеджера в свободной форме
5
42
Заявка не отправляется без имени пользователя
4
43
Заявка не отправляется без телефона пользователя
2
44
Пользователь уже начал оформлять заявку и выбрал место для отдыха, но потом уточнил погоду в другом городе. Бот уточняет: "Продолжим оформлять тур в [первое место] или начнем новую заявку в [второе место]?"
8
45
Заполнение заявки и проверка ее отправки на почту компании
test_mail.xml кейс: 1
46
Повтор кейсов id = 4, 5, 6, 7, 8 из файла test.xml, но теперь с использованием тега <mockData> при обращении к внешнему http ресурсу (метеосайт).
test_mock.xml кейсы: 4, 5, 6, 7, 8
There are no rows in this table
Кейс №1
изображение.png
Кейс №2
изображение.png
Кейс №3
изображение.png
Кейс №4
изображение.png
Кейс №5
изображение.png
Кейс №6
изображение.png
Кейс №7
изображение.png
Кейс №8
изображение.png
test_mail.xml кейс №1
изображение.png
test_mock.xml кейс №4
изображение.png
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.