You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#版Bot Framework SDK v4开发的Teams Bot中集成使用Teams App Test Tool?

如何在C#版Bot Framework SDK v4开发的Teams Bot中集成使用Teams App Test Tool?

我完全懂你这种困境——手里只有BotId,没法用Teams Toolkit,用Bot Framework Emulator测试又和Teams实际环境有差异,想试试Teams App Test Tool却找不到C#相关的指引,确实头疼。其实不管是C#还是JS/TS开发的Bot,集成Test Tool的核心逻辑是相通的,下面给你一步步梳理可行的方案:

  • 第一步:确保本地Bot可被公网访问
    Teams App Test Tool需要能连接到你的Bot,所以如果你的Bot是本地运行的,得用ngrok把本地服务暴露到公网。启动ngrok的命令很简单:ngrok http 3978(3978是Bot Framework SDK默认的本地端口,如果你改了端口就换成对应的),运行后会得到一个类似https://xxxx-xx-xx-xx-xx.ngrok.io的公网地址。

  • 第二步:安装并打开Teams App Test Tool
    你可以直接从微软官方获取Test Tool的安装包,安装到本地后启动它。

  • 第三步:配置Test Tool连接你的Bot
    这里有两种方式:

    1. 直接导入Bot信息
      在Test Tool里找到「导入已有应用」或者类似的入口(界面可能会有小更新,找对应导入的选项),然后填写你的Bot的Microsoft App Id(就是你拿到的BotId),再把Bot的消息端点设置为https://<你的ngrok地址>/api/messages,如果你的Bot有客户端密码,也一并填上。
    2. 手动创建manifest文件导入
      如果第一种方式找不到入口,你可以手动写一个极简的Teams App manifest文件(保存为manifest.json),内容大概是这样:
      {
        "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.16/MicrosoftTeams.schema.json",
        "manifestVersion": "1.16",
        "version": "1.0.0",
        "id": "<你的BotId>",
        "packageName": "com.yourcompany.bot",
        "name": {
          "short": "你的Bot名称"
        },
        "description": {
          "short": "Bot功能描述"
        },
        "bots": [
          {
            "botId": "<你的BotId>",
            "scopes": [ "personal", "team", "groupchat" ],
            "supportsFiles": false,
            "isNotificationOnly": false
          }
        ],
        "validDomains": [ "<你的ngrok域名,比如xxxx-xx-xx-xx-xx.ngrok.io>" ]
      }
      
      把这个文件打包成zip(只放manifest.json,不需要其他文件),然后在Test Tool里选择导入这个zip包就行。
  • 第四步:开始测试
    配置完成后,你就可以在Test Tool里模拟Teams的各种交互场景了——比如发送消息、测试自适应卡片的Teams专属属性、触发频道消息、测试@提及功能等,这些场景的表现会比Bot Framework Emulator更贴近Teams实际环境,能帮你排查不少Emulator测不出来的问题。

一些注意事项

  • 测试过程中要保持ngrok和你的本地Bot一直运行,不然Test Tool会断开连接
  • 如果遇到身份验证失败的问题,先检查BotId和客户端密码是否和Test Tool里的配置一致,确保Bot的身份验证逻辑正常
  • 要是Azure Admin没给你客户端密码,你可以确认下Bot是否允许匿名访问?不过一般生产级Bot都会启用身份验证,最好和Admin确认下相关权限配置

备注:内容来源于stack exchange,提问作者nykko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 14:24:50