← Главная

🗓 Google Calendar — Тест-план интеграции

Интеграция ИИ-агента с Google Calendar: подключение, действия, тестовый режим

30 марта 2026 · Jira: DS-571 (FRONT) · DS-772 (BACK valid.) · DS-776 (FRONT valid.) · DS-750 (ссылка)
Confluence: Google Calendar · Figma: DES-237 · Qase: TC-4, TC-68, TC-69, TC-70

0 pass 0 fail / 0
📋 Задачи в Jira (все MR ожидает тестирования):
DS-571 — [FRONT] Интеграция с Google Calendar (Konstantin Korotkov)
DS-772 — [BACK] Валидация формы создания (Anton Perevoshchikov)
DS-776 — [FRONT] Валидация формы создания (Konstantin Korotkov)
DS-750 — Ссылка на инструкцию (Rustam) — To Do
Окружение:
Frontend: deploy-preview-827
Backend: api-1764.review.chatplace.io
Полный URL: https://deploy-preview-827--chatplace-front.netlify.app/?preview-api-core=https://api-1764.review.chatplace.io/
User: 571@mail.com / 571@mail.com
Google аккаунт: нужен реальный Google Calendar (попросить Рустама добавить email для тестовой интеграции)
⚠️ Тестовый режим работает с реальным календарём (не мок)
⚠️ Редирект OAuth ведёт на dev-app (нет возможности настроить на preview)

1. Подключение интеграции функционал

1.1 Промо-экран и OAuth

Действие: Открыть страницу интеграций без подключённого Google Calendar
Ожидается: Показывается промо-экран с CTA «Подключить»
Действие: Нажать CTA «Подключить» на промо-экране
Ожидается: Открывается OAuth Google, после разрешения — Calendar подключён
Действие: Завершить OAuth-авторизацию и вернуться на страницу интеграции
Ожидается: Виден список аккаунтов и календарей
Действие: В списке календарей выбрать несколько чекбоксов
Ожидается: Мультиселект работает — можно выбрать несколько календарей одновременно
Действие: Нажать кнопку Refresh в списке календарей
Ожидается: Список календарей обновляется (отражает изменения из Google)
Действие: Нажать ссылку «Как настроить Google Calendar» (DS-750)
Ожидается: Открывается корректная страница инструкции
Действие: Переключить язык интерфейса на RU/EN/ES/PT/UZ
Ожидается: Промо-экран корректно переведён на каждый язык

2. Проверка свободного времени функционал

Действие: Открыть настройку проверки свободного времени и выбрать несколько календарей
Ожидается: Мультиселект календарей доступен и работает
Действие: Проверить список календарей в селекте
Ожидается: Все подключённые календари доступны к выбору
Действие: Выбрать несколько календарей и запросить свободные слоты через агента
Ожидается: Агент проверяет слоты во всех выбранных календарях и предлагает свободные с учётом занятости

3. Разрешения для действий UI

Действие: Открыть настройку действия создания/изменения/отмены и посмотреть список календарей
Ожидается: Доступны только календари с правами редактирования
Действие: Проверить наличие read-only календарей (подписки, чужие) в списке для записи
Ожидается: Read-only календари НЕ отображаются в списке для действий с правами записи
Действие: Переключить календарь в настройках действия
Ожидается: Все разрешения и настройки применяются к выбранному календарю
Действие: Включить/отключить разрешение Google Calendar в настройках
Ожидается: Разрешение переключается, действия становятся доступны/недоступны соответственно

4. Действие: Создавать события функционал

4.1 Настройка действия

Действие: Открыть настройку создания событий и выбрать календарь
Ожидается: Календарь выбирается, настройки применяются к нему
Действие: Проверить часовой пояс по умолчанию и попробовать изменить его
Ожидается: По умолчанию — часовой пояс браузера; изменение сохраняется
Действие: Добавить и удалить дни в расписании
Ожидается: Дни добавляются/удаляются корректно, изменения сохраняются
Действие: Добавить, удалить и отредактировать временные промежутки в расписании
Ожидается: Промежутки корректно создаются/удаляются/редактируются
Действие: Изменить длительность события в настройках
Ожидается: Длительность сохраняется и применяется при создании
Действие: Настроить действия после добавления события (пост-действия)
Ожидается: Настройки сохраняются, пост-действия выполняются после создания

4.2 Валидация формы (DS-772 / DS-776)

Действие: Установить время окончания позже времени начала и сохранить
Ожидается: Фронтенд-валидация пропускает — форма сохраняется
Действие: Отправить корректные данные через форму и проверить бэкенд
Ожидается: Бэкенд-валидация проходит, данные сохраняются
Действие: Установить время окончания ≤ времени начала и попробовать сохранить
Ожидается: Показывается ошибка валидации, форма не сохраняется
Действие: Заполнить форму невалидными данными и нажать «Сохранить»
Ожидается: Форма не сохраняется, отображается сообщение об ошибке

4.3 Тестовый режим — создание

Действие: В тестовом чате попросить агента создать событие на свободный слот
Ожидается: Событие появляется в Google Calendar с корректными данными
Действие: Открыть созданное событие в Google Calendar
Ожидается: Название, время, описание события заполнены корректно
Действие: Проверить ответ агента после создания события
Ожидается: Агент подтверждает создание события в чате (название, дата, время)
Действие: Попросить агента создать событие на занятый слот
Ожидается: Агент сообщает о конфликте и предлагает другое свободное время

5. Действие: Напоминание о записи функционал

Действие: Открыть настройки и настроить напоминание о предстоящем событии
Ожидается: Настройка сохраняется (время до события, текст напоминания)
Действие: Создать событие и дождаться времени напоминания в тестовом режиме
Ожидается: Напоминание срабатывает, агент отправляет сообщение в чат

6. Действие: Изменять время события функционал

Действие: Открыть настройку действия «Изменять время» и задать параметры
Ожидается: Параметры переноса сохраняются корректно
Действие: В тестовом чате попросить агента перенести существующее событие
Ожидается: Время события обновлено в Google Calendar
Действие: Проверить ответ агента после переноса
Ожидается: Агент подтверждает перенос в чате (старое → новое время)

7. Действие: Отменять события функционал

Действие: Открыть настройку действия «Отменять события» и задать параметры
Ожидается: Параметры отмены сохраняются корректно
Действие: В тестовом чате попросить агента отменить событие
Ожидается: Событие удалено/отменено в Google Calendar
Действие: Проверить ответ агента после отмены
Ожидается: Агент подтверждает отмену в чате

8. Управление действиями UI

Действие: Включить/выключить действие свитчером
Ожидается: Появляется уведомление «Изменения сохранены», состояние переключается
Действие: Открыть карточку действия и проверить отображение разрешений
Ожидается: Разрешения корректно отображаются в карточке действия
Действие: Нажать «Удалить действие» и подтвердить в модальном окне
Ожидается: Действие удалено, исчезает из списка
Действие: Выключить действие свитчером, затем запросить его в тестовом чате
Ожидается: Выключенное действие не срабатывает, агент не выполняет его
Действие: Найти виджет действия на канвасе и попробовать включить/отключить
Ожидается: Виджет переключается, состояние синхронизировано с настройками

9. Тестовый режим (полный флоу) тестовый чат

⚠️ Действия в тестовом режиме реальные! Создание/изменение/отмена событий выполняется в настоящем Google Calendar (не мок).
Действие: Написать в тестовый чат запрос на действие с Calendar
Ожидается: Агент распознаёт намерение → выполняет действие → возвращает результат
Действие: Попросить агента записать на свободное время (полный флоу: проверка слотов → подтверждение → создание)
Ожидается: Событие создано в календаре с корректными данными
Действие: Попросить агента перенести существующее событие на другое время
Ожидается: Время события изменено в Google Calendar
Действие: Попросить агента отменить событие через чат
Ожидается: Событие отменено/удалено в Google Calendar
Действие: Запросить действие при ненастроенном/отключённом Calendar
Ожидается: Агент сообщает об ошибке (действие не настроено / Calendar отключён)

10. Граничные случаи edge case

Действие: Отключить Google-аккаунт в настройках интеграции
Ожидается: Все действия с Calendar становятся недоступны
Действие: Удалить календарь в Google, затем нажать Refresh в ChatPlace
Ожидается: Удалённый календарь пропадает из списка
Действие: Создать два действия «Создать событие» для разных календарей и протестировать оба
Ожидается: Оба действия работают корректно, события попадают в нужные календари
Действие: Попросить агента создать событие на прошедшую дату
Ожидается: Агент отклоняет или предупреждает о прошедшей дате
Действие: Удалить все дни из расписания и попросить агента записать
Ожидается: Агент сообщает, что нет доступных слотов

11. Desktop и Mobile adaptive

Действие: Открыть все экраны интеграции Google Calendar на десктопе
Ожидается: Все экраны отображаются корректно, элементы не обрезаются
Действие: Открыть все экраны интеграции на мобильном разрешении
Ожидается: Все экраны адаптированы, элементы не обрезаются, управление удобно
Действие: Открыть тестовый чат на мобильном устройстве и выполнить действие
Ожидается: Тестовый чат работает корректно на мобильном