备注
预览功能不适合生产使用且功能可能受限。 这些功能在正式发布之前已经可用,以便客户可以抢先体验并提供反馈。
Power Apps 测试引擎包括一个模型上下文协议(MCP)服务器实现,它通过对应用程序的确定性分析来增强测试创建。 本指南介绍如何使用此功能生成更准确、与上下文相关的测试。
什么是模型上下文协议?
模型上下文协议(MCP)是 AI 工具之间通信的标准,用于提供上下文和作。 在测试引擎的上下文中,它可以启用:
- 确定性分析:扫描和分析应用程序结构
- 上下文感知:了解代码关系和依赖关系
- 代码生成:根据上下文创建代码片段
- 交互式协助:通过相关建议响应用户查询
- 计划集成:使用计划设计器 进行 结构化测试计划
测试引擎 MCP 服务器提供了一个标准输入/输出(stdio)实现,您可以将其与 MCP 客户端(如) Visual Studio或其他兼容工具一起使用 GitHub Copilot。
测试引擎 MCP 服务器的工作原理
测试引擎 MCP 服务器将确定性应用程序扫描与生成式建议相结合:
扫描阶段:分析您的应用程序结构以识别:
- 控件类型和层次结构
- 导航路径
- 数据源和架构
- 常见交互模式
- 解决方案组件关系
- 实体定义和关系
- 表单布局和业务规则
- 自定义代码组件
分析阶段:处理扫描结果以确定有助于识别以下内容的优化提示:
- 可测试的组件和性能
- 潜在的测试方案
- 覆盖机会
- 风险领域
- 数据依赖关系
- 所需的测试数据设置
计划集成阶段:与计划设计器 配合 使用以:
- 按业务需求组织测试
- 确定关键测试方案的优先级
- 创建结构化测试计划
- 根据计划项跟踪测试覆盖率
- 生成有关测试覆盖率的报告
推荐阶段:生成与上下文相关的提示,以协助:
- 测试模板和结构
- Power Fx 断言
- 导航序列
- 数据验证模式
- 模拟数据定义
- 错误处理方案
集成阶段:通过 stdio 与 MCP 客户端通信以:
- 响应用户提示
- 提供上下文感知建议
- 建议的提示,以帮助生成完整的测试用例
使用 MCP 方法的好处
与纯生成方法相比,模型上下文协议服务器具有多种优势,可以配置这些方法以改进:
| 权益 | Description |
|---|---|
| 准确性 | 确定性分析确保生成的测试参考实际控制和属性 |
| 可靠性 | 测试基于应用程序的实际结构,而不是假设的模式 |
| 上下文感知 | MCP 服务器了解应用程序的结构并可以生成更相关的测试 |
| 与计划设计器集成 | 允许根据业务需求和计划项目组织测试 |
| 解决方案元数据利用率 | 使用解决方案的实体定义、关系和业务规则 |
| 测试数据生成 | 创建建议,以根据解决方案的数据模型生成适当的测试数据 |
| 法学硕士的补充 | 与大型语言模型配合使用,增强其生成能力 |
| 标准化方法 | 遵循 MCP 规范,以便与各种客户端进行一致的交互 |
设置 MCP 服务器
要使用测试引擎 MCP 服务器,请执行以下作:
- 安装最新版本的 Power Apps 测试引擎 CLI
- 在工作区中设置应用程序源文件
- 配置 MCP 服务器以分析您的工作空间
- 将 MCP 客户端连接到服务器
先决条件
- Power Apps 测试引擎 CLI(最新版本)
- 源控 Power Platform 解决方案
- 与 MCP 兼容的客户端,例如 Visual Studio 或 GitHub Copilot
将计划设计器与 MCP 结合使用
计划设计器 提供了一种结构化的方法来组织测试工作并确定其优先级。 当与测试引擎 MCP 服务器一起使用时,它增强了测试生成过程:
- 测试计划创建:定义具有特定目标和成功标准的测试计划
- 需求映射:将测试链接到业务需求和解决方案组件
- 测试优先级:在实施解决方案时确定关键路径和高风险区域,以便进行重点测试
- 覆盖率分析:根据计划项和解决方案组件跟踪测试覆盖率
- 测试数据定义:为每个测试场景指定测试数据要求
Plan Designer 信息如何增强 MCP 服务器
MCP 服务器使用计划设计器信息来:
- 将测试生成重点放在高优先级领域
- 创建涵盖计划定义要求的测试数据
- 结构测试以验证特定计划项目
- 生成与业务优先级一致的全面测试覆盖率
- 提供测试和业务需求之间的可追溯性
入门
查看测试引擎 MCP , 了解 MCP 服务器和入门信息。
将确定性分析与生成式 AI 相结合
测试引擎 MCP 服务器的真正强大之处在于将确定性分析与生成功能相结合:
- 确定性分析通过识别实际组件来确保准确性
- 生成式 AI 提供自然语言理解和创意测试场景
- 它们共同产生了既可靠又全面的测试
这种混合方法有助于克服以下两者的局限性:
- 纯粹的确定性方法可能缺乏对创造性测试场景的覆盖
- 纯生成方法可以引用不存在的控件或不正确的属性
- 审查流程以完善和改进生成的结果
最佳做法
使用测试引擎 MCP 服务器时:
- 提供完整的源上下文:确保解决方案文件夹包含所有相关文件
- 在提示中具体:包括特定的控件名称和预期行为
- 增量迭代:从基本测试开始,逐步增加复杂性
- 验证生成的测试:在执行前查看和调整测试
- 与手动专业知识相结合:将 MCP 服务器用作生产力工具,而不是替代测试知识
故障排除
如果遇到 MCP 服务器问题,请尝试以下故障排除步骤:
| 问题 | 解决 |
|---|---|
| 服务器无法启动 | 验证安装和 PATH 环境变量 |
| 客户端无法连接 | 检查 stdio 配置和文件权限 |
| 生成的测试引用了不正确的控件 | 确保您的解决方案文件完整且最新 |
| 分析似乎不完整 | 使用详细日志记录查看服务器正在扫描的内容 |