Поделиться через


Средство тестирования приложений Teams для Visual Studio

Средство тестирования приложений Teams (средство тестирования) упрощает отладку приложений на основе ботов. Вы можете общаться с ботом и просматривать его сообщения и адаптивные карточки, как они отображаются в Microsoft Teams. Для использования средства тестирования не требуется учетная запись разработчика Microsoft 365, туннелирование или регистрация приложения Teams и бота.

На следующем рисунке показан пример приложения, отображающего ответ в средстве тестирования.

Снимок экрана: адаптивная карточка средства тестирования приложений Teams.

Ниже приведены преимущества средства тестирования.

  • Песочница. Песочница средства тестирования имитирует поведение, внешний вид и пользовательский интерфейс Teams.

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

  • Уменьшение зависимостей учетных записей. Для отладки бота не требуется клиент разработчика Microsoft 365 и разрешения на отправку приложений.

  • Быстрые итерации внутреннего цикла. Оптимизирует процесс внесения изменений в структуру приложения и логику бота без необходимости повторного развертывания бота в облаке.

  • Имитация данных и действий. Средство тестирования упрощает тестирование сложных сценариев, таких как отправка приветственного сообщения при присоединении нового участника к каналу и использование имитации данных и триггеров действий.

  • Надежный: средство тестирования надежно, так как адаптивная карточка бота использует ту же технологию отрисовки, что и в Teams.

  • Интеграция с существующими приложениями ботов Teams. Средство тестирования легко интегрируется с существующими приложениями ботов Teams, созданными с помощью пакета SDK Bot Framework.

  • Поддержка различных областей. Средство тестирования поддерживает тестирование в личных, командных и групповых чатах.

Предварительные условия

Убедитесь, что вы установили следующие средства для создания и развертывания бота в средстве тестирования:

Установка Для использования...
Node.js Серверной среды выполнения JavaScript.
Visual Studio 2022
Вы можете установить корпоративную версию в Visual Studio 2022, а также рабочие нагрузки ASP.NET и веб-разработки. Используйте версию 17.9 или более позднюю.

Интерфейс средства тестирования в Visual Studio

Средство тестирования обеспечивает более быструю отладку приложений бота по сравнению с клиентом Teams. Средство тестирования обеспечивает поддержку всех функций приложений бота. В этом сценарии в качестве примера мы используем бот чата ИИ . Чтобы выполнить отладку бота в средстве тестирования, выполните следующие действия:

  1. Откройте Visual Studio.

  2. Выберите Создать новый проект.

    Снимок экрана: выбор для создания нового проекта.

  3. В поле поиска введите Microsoft Teams. В результатах поиска выберите Приложение Microsoft Teams.

  4. Нажмите кнопку Далее.

    Снимок экрана: выбор шаблонов для создания нового проекта.

  5. Введите имя проекта и нажмите кнопку Создать.

    Снимок экрана: параметр для ввода имени проекта.

  6. Выберите Ai Chat BotCreate (Создание бота >чата СИ).

    Примечание.

    • OpenAI или Azure OpenAI являются необходимым условием для отладки приложения бота чата ИИ .

    Снимок экрана: выбор приложения Teams для создания нового проекта.

    Откроется окно GettingStarted.

    Снимок экрана: страница

  7. Файл appsettings.TestTool.json помогает настроить средство тестирования путем обновления нескольких параметров. Чтобы обновить appsettings.TestTool.json файл, выполните действия OpenAI или Azure OpenAI:

    Обновите OpenAI ApiKey в appsettings.TestTool.json файле.

    Снимок экрана: обновленный ключ OpenAI.

  8. В раскрывающемся списке отладки выберите Средство тестирования приложений Teams (браузер).

    Снимок экрана: выбор средства тестирования приложений Teams из раскрывающегося списка.

    Средство тестирования открывает бот на веб-странице.

    Снимок экрана: бот открывает средство тестирования на веб-странице.

Триггеры действий

Вы можете макетировать действие в средстве тестирования с помощью триггеров действий. Существует два типа триггеров действий:

Предопределенные триггеры действий

Средство тестирования предоставляет стандартные триггеры действий для проверки функциональных возможностей бота.

Категория Действие Обработчик
Активация действия обновления установки Установка бота


Удаление бота
onInstallationUpdate
onInstallationUpdateAdded

onInstallationUpdate
onInstallationUpdateRemove
Активация действия обновления беседы Добавление пользователя

Добавление бота

Добавление канала
onMembersAdded

onTeamsMembersAddedEvent

onTeamsChannelRenamedEvent
Удаление пользователя


Удаление бота


Удаление канала

Удаление команды
onMembersRemoved
onTeamsMembersRemovedEvent

onMembersRemoved
onTeamsMembersRemovedEvent

onTeamsChannelDeletedEvent

onTeamsTeamDeletedEvent
Переименование канала

Переименование команды
onTeamsChannelRenamedEvent

onTeamsTeamRenamedEvent

Примечание.

Все типы действий доступны не во всех областях. Например, нельзя добавить или удалить канал в личном или групповом чате.

Предопределенные триггеры действий доступны в меню Макет действия в средстве тестирования. В этом сценарии в качестве примера используется триггер добавить действие пользователя . Чтобы имитировать действие add user , сделайте следующее:

  1. В Visual Studio Code перейдите в обозреватель решений.

  2. Выберите файл Program.cs .

  3. В файле Program.cs добавьте builder.Services.AddTransient<IBot>(sp => следующий код:

    app.OnConversationUpdate("membersAdded", async (context, state, cancellationToken) =>
    {
       await context.SendActivityAsync($"new member added", cancellationToken: cancellationToken);
    });
    

    Обработчик OnConversationUpdate распознает участников, присоединяющихся к диалогу, как описано в разделе Добавление действия пользователя.

    Снимок экрана: код, добавленный в файл program.cs для предопределенного действия макета добавления пользователя.

  4. В средстве тестирования перейдите в раздел Макет действия и выберите Добавить пользователя.

    Снимок экрана: параметр

    Появится всплывающее диалоговое окно для предварительного просмотра обработчика действий.

  5. Выберите Отправить действие.

    Снимок экрана: параметр отправки действий для предопределенного действия макета добавления пользователя.

    Бот отправляет ответ.

    Снимок экрана: ответ на добавление пользователя предопределенного действия макета.

Триггеры пользовательских действий

Настраиваемое действие можно использовать для настройки триггера reactionsAddedдействия в соответствии с требованиями приложения бота. Средство тестирования автоматически заполняет необходимые свойства действия. Вы также можете изменить тип действия и добавить дополнительные свойства, такие как, MembersAdded, membersremovedи reactionsremoved.

  1. В Visual Studio Code перейдите в обозреватель решений.

  2. Выберите файл Program.cs .

  3. В файле Program.cs добавьте builder.Services.AddTransient<IBot>(sp => следующий код:

    app.OnMessageReactionsAdded(async (context, state, cancellationToken) =>
    {
       await context.SendActivityAsync($"reaction added.", cancellationToken: cancellationToken);
    });
    

    Обработчик OnMessageReactionsAdded определяет реакцию для добавления с помощью ReplyToId свойства предыдущего диалога.

    Снимок экрана: код, добавленный в файл program.cs для настройки действия макета.

  4. Перейдите на веб-страницу средства тестирования и выберите последний ответ на панели журналов, чтобы скопировать replyToId.

    Снимок экрана: выбор параметра replyToID для копирования для настройки действия макета.

  5. Выберите Макет пользовательского>действия действия.

    Снимок экрана: список параметров в разделе Макет действия.

  6. Чтобы настроить действие, добавьте messageReaction в type свойство .

  7. Замените последней версией replyToId.

    {
      "type": "messageReaction",
      "reactionsAdded": [
        {
          "type": "like"
        }
      ],
      "replyToId": "d60fd1cb-3e8f-44ef-849c-404806ba1b47"
    }
    
  8. Выберите Отправить действие.

    Снимок экрана: параметр отправки действия после настройки действия макета.

    Бот отправляет onReactionsAdded обработчик в ответ.

    Снимок экрана: ответ настраиваемого действия макета.

Ограничения

  • Функции бота, включенные с помощью манифеста приложения, недоступны, так как средство тестирования не обрабатывает его.

  • Средство тестирования поддерживает не все типы карточек, кроме адаптивных карточек.

  • Средство тестирования не поддерживает следующие функции адаптивной карточки:

  • Средство тестирования не поддерживает следующие возможности:

    • Мобильная версия
    • Собрание

См. также