将模型上下文协议服务器与测试引擎结合使用

备注

预览功能不适合生产使用且功能可能受限。 这些功能在正式发布之前已经可用,以便客户可以抢先体验并提供反馈。

Power Apps 测试引擎包括一个模型上下文协议(MCP)服务器实现,它通过对应用程序的确定性分析来增强测试创建。 本指南介绍如何使用此功能生成更准确、与上下文相关的测试。

什么是模型上下文协议?

模型上下文协议(MCP)是 AI 工具之间通信的标准,用于提供上下文和作。 在测试引擎的上下文中,它可以启用:

  • 确定性分析:扫描和分析应用程序结构
  • 上下文感知:了解代码关系和依赖关系
  • 代码生成:根据上下文创建代码片段
  • 交互式协助:通过相关建议响应用户查询
  • 计划集成:使用计划设计器 进行 结构化测试计划

测试引擎 MCP 服务器提供了一个标准输入/输出(stdio)实现,您可以将其与 MCP 客户端(如) Visual Studio或其他兼容工具一起使用 GitHub Copilot。

测试引擎 MCP 服务器的工作原理

测试引擎 MCP 服务器将确定性应用程序扫描与生成式建议相结合:

  1. 扫描阶段:分析您的应用程序结构以识别:

    • 控件类型和层次结构
    • 导航路径
    • 数据源和架构
    • 常见交互模式
    • 解决方案组件关系
    • 实体定义和关系
    • 表单布局和业务规则
    • 自定义代码组件
  2. 分析阶段:处理扫描结果以确定有助于识别以下内容的优化提示:

    • 可测试的组件和性能
    • 潜在的测试方案
    • 覆盖机会
    • 风险领域
    • 数据依赖关系
    • 所需的测试数据设置
  3. 计划集成阶段:与计划设计器 配合 使用以:

    • 按业务需求组织测试
    • 确定关键测试方案的优先级
    • 创建结构化测试计划
    • 根据计划项跟踪测试覆盖率
    • 生成有关测试覆盖率的报告
  4. 推荐阶段:生成与上下文相关的提示,以协助:

    • 测试模板和结构
    • Power Fx 断言
    • 导航序列
    • 数据验证模式
    • 模拟数据定义
    • 错误处理方案
  5. 集成阶段:通过 stdio 与 MCP 客户端通信以:

    • 响应用户提示
    • 提供上下文感知建议
    • 建议的提示,以帮助生成完整的测试用例

使用 MCP 方法的好处

与纯生成方法相比,模型上下文协议服务器具有多种优势,可以配置这些方法以改进:

权益 Description
准确性 确定性分析确保生成的测试参考实际控制和属性
可靠性 测试基于应用程序的实际结构,而不是假设的模式
上下文感知 MCP 服务器了解应用程序的结构并可以生成更相关的测试
与计划设计器集成 允许根据业务需求和计划项目组织测试
解决方案元数据利用率 使用解决方案的实体定义、关系和业务规则
测试数据生成 创建建议,以根据解决方案的数据模型生成适当的测试数据
法学硕士的补充 与大型语言模型配合使用,增强其生成能力
标准化方法 遵循 MCP 规范,以便与各种客户端进行一致的交互

设置 MCP 服务器

要使用测试引擎 MCP 服务器,请执行以下作:

  1. 安装最新版本的 Power Apps 测试引擎 CLI
  2. 在工作区中设置应用程序源文件
  3. 配置 MCP 服务器以分析您的工作空间
  4. 将 MCP 客户端连接到服务器

先决条件

  • Power Apps 测试引擎 CLI(最新版本)
  • 源控 Power Platform 解决方案
  • 与 MCP 兼容的客户端,例如 Visual Studio 或 GitHub Copilot

将计划设计器与 MCP 结合使用

计划设计器 提供了一种结构化的方法来组织测试工作并确定其优先级。 当与测试引擎 MCP 服务器一起使用时,它增强了测试生成过程:

  1. 测试计划创建:定义具有特定目标和成功标准的测试计划
  2. 需求映射:将测试链接到业务需求和解决方案组件
  3. 测试优先级:在实施解决方案时确定关键路径和高风险区域,以便进行重点测试
  4. 覆盖率分析:根据计划项和解决方案组件跟踪测试覆盖率
  5. 测试数据定义:为每个测试场景指定测试数据要求

Plan Designer 信息如何增强 MCP 服务器

MCP 服务器使用计划设计器信息来:

  • 将测试生成重点放在高优先级领域
  • 创建涵盖计划定义要求的测试数据
  • 结构测试以验证特定计划项目
  • 生成与业务优先级一致的全面测试覆盖率
  • 提供测试和业务需求之间的可追溯性

入门

查看测试引擎 MCP 了解 MCP 服务器和入门信息。

将确定性分析与生成式 AI 相结合

测试引擎 MCP 服务器的真正强大之处在于将确定性分析与生成功能相结合:

  • 确定性分析通过识别实际组件来确保准确性
  • 生成式 AI 提供自然语言理解和创意测试场景
  • 它们共同产生了既可靠又全面的测试

这种混合方法有助于克服以下两者的局限性:

  • 纯粹的确定性方法可能缺乏对创造性测试场景的覆盖
  • 纯生成方法可以引用不存在的控件或不正确的属性
  • 审查流程以完善和改进生成的结果

最佳做法

使用测试引擎 MCP 服务器时:

  • 提供完整的源上下文:确保解决方案文件夹包含所有相关文件
  • 在提示中具体:包括特定的控件名称和预期行为
  • 增量迭代:从基本测试开始,逐步增加复杂性
  • 验证生成的测试:在执行前查看和调整测试
  • 与手动专业知识相结合:将 MCP 服务器用作生产力工具,而不是替代测试知识

故障排除

如果遇到 MCP 服务器问题,请尝试以下故障排除步骤:

问题 解决
服务器无法启动 验证安装和 PATH 环境变量
客户端无法连接 检查 stdio 配置和文件权限
生成的测试引用了不正确的控件 确保您的解决方案文件完整且最新
分析似乎不完整 使用详细日志记录查看服务器正在扫描的内容

了解 AI 辅助测试创作
了解非确定性 AI 测试
探索测试引擎示例