将模型上下文协议服务器与测试引擎配合使用(已弃用)

备注

测试引擎已弃用 ,将在将来的版本中删除。 使用 Power Platform Playwright 示例在 Power Platform 和 Dynamics 365 服务中测试自动化功能。

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

什么是模型上下文协议?

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

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

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

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

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

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

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

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

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

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

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

使用 MCP 方法的好处

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

益处 描述
准确性 确定性分析确保生成的测试参考实际控制和属性
可靠性 测试基于应用程序的实际结构,而不是假设的模式
上下文感知 MCP 服务器了解应用程序的结构并可以生成更相关的测试
与计划设计器集成 允许根据业务需求和计划项目组织测试
解决方案元数据利用率 使用你的解决方案中的实体定义、关系和业务规则
测试数据生成 创建建议,以根据解决方案的数据模型生成适当的测试数据
与大型语言模型(LLM)互补 与大型语言模型配合使用,增强其生成能力
标准化方法 遵循 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. 测试数据定义:为每个测试场景指定测试数据要求

计划设计器信息如何增强MCP服务器

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

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

入门

查看 测试引擎 MCP 获取关于 MCP 服务器和入门的信息。

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

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

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

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

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

最佳做法

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

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

故障排除

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

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

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