Fabric 门户提供在发布之前测试和验证用户数据函数代码更改的功能。 可以在开发模式下测试未发布的代码,或在“仅运行”模式下验证已发布的函数。 对于本地测试,可以使用 VS Code 扩展。
测试可帮助你:
- 验证函数是否成功运行且没有错误
- 验证函数是否返回具有不同输入的预期结果
- 通过查看日志和错误消息快速调试问题
- 可以在开发模式下快速迭代代码更改,而无需在每次编辑后发布。
- 确认已发布的函数在“仅运行”模式下正常工作
注释
某些用户可能无法访问开发模式下的测试功能,具体取决于其 Fabric 租户的区域。 请查看本文中的 区域限制 说明。
先决条件
在测试函数之前,需要:
- Fabric 工作区中的用户数据函数项
- 写入权限 以访问开发模式并使用测试功能
- 代码中定义的函数(已发布或未发布)
了解“开发模式”和“仅运行”模式
Fabric 用户数据函数提供两种模式,用于确定可以测试的内容:
- 开发模式 - 测试已发布和未发布的函数。 此模式允许你在发布代码之前验证代码更改。
- 仅运行模式 - 仅运行已发布的函数。 此模式显示具有“执行”权限的其他用户可以运行的内容。
可以使用用户数据函数页面右上角的模式切换器切换模式。 有关门户界面的详细信息,请参阅 “使用门户编辑器”。
在开发模式下测试函数
若要在开发模式下测试函数,请执行以下作:
注释
测试会话可能需要几秒钟才能启动。 会话处于活动状态后,即使进行代码更改,也可以立即运行测试。
了解测试面板
选择“测试”图标时,“测试”面板将作为一个对话框打开,可在其中配置和运行测试。 该面板提供测试函数和查看结果所需的一切:
- 函数选择器 - 从下拉菜单选择要测试的函数。 该列表包括已发布和未发布的函数。
- 参数 - 为需要参数的函数提供输入值。
- 测试输出 - 如果函数失败,请查看函数的返回值或错误详细信息。
-
日志输出 - 查看代码生成的日志,包括添加到对象的
logging语句。 有关查看和分析日志的详细信息,请参阅 “查看函数日志”。
若要运行测试,请提供任何必需的参数,然后选择 “测试 ”按钮。 状态栏中的测试会话指示器显示测试会话处于活动状态的时间。 会话保持活动状态 15 分钟,允许你多次测试,而无需等待会话重启。
在“仅运行”模式下测试已发布的函数
要以其他用户的方式运行已发布的函数以进行测试,请执行以下步骤:
- 如果尚未发布函数,请发布。
- 使用模式切换器切换到 “仅运行 ”模式。
- 将鼠标悬停在函数列表中的函数上。
- 选择 “运行 ”图标以打开“运行”面板。
- 在“运行”面板中提供任何必需的参数。
- 选择 “运行” 以执行函数。
“运行”面板提供与测试面板相同的元素:函数选择器、参数、输出和日志。 此模式可用于验证已发布的函数是否适用于具有执行权限的用户。
测试的最佳做法
请遵循以下方法有效地测试您的函数:
- 提前和经常测试 - 在开发函数时测试函数,而不是等到所有代码完成为止。
- 使用不同的输入进行测试 - 使用 各种参数值(包括边缘事例)验证函数。
- 仔细查看日志 - 使用日志输出了解函数行为并识别问题。
- 发布前进行测试 - 在发布之前始终在开发模式下进行测试,以确保函数按预期工作。
- 使用“仅运行”模式进行验证 - 发布后,使用“仅运行”模式验证已发布函数是否正常工作。
排查测试问题
如果在测试函数时遇到问题,请考虑以下常见解决方案:
测试会话未启动
- 等待几秒钟,让测试会话初始化
- 检查网络连接并确保可以访问 Fabric 服务
- 验证区域是否支持测试功能(请参阅 区域限制)
函数失败并出现连接错误
- 验证是否已正确配置所有必需的数据连接
- 确保你有权访问连接的数据源
- 检查连接凭据是否有效且未过期
函数失败并出现导入或模块错误
测试超时
- 查看 执行超时限制 (240 秒)
- 优化函数代码以减少执行时间
- 检查日志以确定哪些操作耗时最长
返回值超出范围错误
- 查看 响应大小限制 (30 MB)
- 减少函数返回的数据量
- 考虑分页或筛选结果
有关诊断问题的详细信息,请参阅 “查看函数日志”。
开发模式下测试功能的区域限制
测试功能尚未在所有 Fabric 区域中提供。 如果租户区域不受支持,可在 Functions 门户中看到一条消息。 可以在 服务详细信息和限制 文章中查看支持的区域。
如果测试功能在你的区域中不可用,你仍然可以发布函数并使用“运行”功能来验证它们。 或者,可以在受支持的区域中 创建新容量 。
相关内容
- 使用门户编辑器 - 了解门户界面、开发模式和发布
- 查看函数日志 - 分析日志并排查函数执行问题
- Python 编程模型 - 了解如何编写函数代码
- 服务详细信息和限制 - 查看服务限制和区域可用性
- 使用 VS Code 创建用户数据函数 - 了解本地测试选项