Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
终止支持通知:2026 年 10 月 7 日, Amazon 将停止对的支持。 Amazon IoT Greengrass Version 1 2026 年 10 月 7 日之后,您将无法再访问这些 Amazon IoT Greengrass V1 资源。如需了解更多信息,请访问迁移自 Amazon IoT Greengrass Version 1。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
运行 Amazon IoT Greengrass 资格套件
设置所需的配置后,就可以开始测试了。完整测试套件的运行时取决于您的硬件。作为参考,在 Raspberry Pi 3B 上完成完整的测试套件大约需要 30 分钟。
以下 run-suite 命令示例介绍如何针对某个设备池运行资格测试。设备池是一组相同的设备。
- IDT v3.0.0 and later
-
- 在指定的测试套件中运行所有测试组。
-
devicetester_[linux | mac | win_x86-64] run-suite --suite-id GGQ_1.0.0 --pool-id <pool-id>
使用 list-suites 命令列出 tests 文件夹中的测试套件。
- 在测试套件中运行特定的测试组。
-
devicetester_[linux | mac | win_x86-64] run-suite --suite-id GGQ_1.0.0 --group-id <group-id> --pool-id <pool-id>
使用 list-groups 命令列出测试套件中的测试组。
- 在测试组中运行特定测试用例。
-
devicetester_[linux | mac | win_x86-64] run-suite --group-id <group-id> --test-id <test-id>
- 在测试组中运行多个测试用例。
-
devicetester_[linux | mac | win_x86-64] run-suite --group-id <group-id> --test-id <test-id1>,<test-id2>
- 列出测试组中的测试用例。
-
devicetester_[linux | mac | win_x86-64] list-test-cases --group-id <group-id>
run-suite 命令的选项是可选的。例如,如果您的 device.json 文件中只定义了一个设备池,则可以忽略 pool-id。或者,如果您要在 tests 文件夹中运行最新的测试套件版本,则可以忽略 suite-id。
如果在线提供了更新的测试套件版本,IDT 会提示您。有关更多信息,请参阅 设置默认更新行为。
有关 run-suite 和其他 IDT 命令的更多信息,请参阅 命令的同意 Amazon IoT Greengrass。
- IDT v2.3.0 and earlier
-
- 在指定套件中运行所有测试组。
-
devicetester_[linux | mac | win_x86-64] run-suite --suite-id GGQ_1 --pool-id <pool-id>
- 运行特定测试组。
-
devicetester_[linux | mac | win_x86-64] run-suite --suite-id GGQ_1 --group-id <group-id> --pool-id <pool-id>
如果您在单个设备池上运行单个测试套件,则 suite-id 和 pool-id 是可选的。这意味着您的 device.json 文件中只定义了一个设备池。
检查 Greengrass 的依赖关系
我们建议您运行依赖项检查程序测试组,以确保在运行相关测试组之前已安装所有 Greengrass 依赖项。例如:
-
在运行核心资格测试组之前运行 ggcdependencies。
-
在运行特定于容器的测试组之前运行 containerdependencies。
-
在运行特定于 Docker 的测试组之前运行 dockerdependencies。
-
在运行特定于流管理器的测试组之前运行 ggcstreammanagementdependencies。
设置默认更新行为
当您开始测试运行时,IDT 会在线检查是否有更新的测试套件版本。如果有,IDT 会提示您更新到最新的可用版本。您可以设置 upgrade-test-suite(或 u)标记来控制默认更新行为。有效值为:
如果您未使用 upgrade-test-suite 标记,IDT 会在有更新可用时提示您,并会等待 30 秒让您输入(y 或 n)。如果您未输入信息,则默认为 n 并继续运行测试。
以下示例显示了此功能的常见用例:
- 自动使用可用于测试组的最新测试。
-
devicetester_linux run-suite -u y --group-id mqtt --pool-id DevicePool1
- 在特定测试套件版本中运行测试。
-
devicetester_linux run-suite -u n --suite-id GGQ_1.0.0 --group-id mqtt --pool-id DevicePool1
- 运行时提示更新。
-
devicetester_linux run-suite --pool-id DevicePool1
命令的同意 Amazon IoT Greengrass
IDT 命令位于 <device-tester-extract-location>/bin 目录中。它们可以用于以下操作:
- IDT v3.0.0 and later
-
help
-
列出有关指定命令的信息。
list-groups
-
列出给定测试套件中的组。
list-suites
-
列出可用的测试套件。
list-supported-products
-
列出当前 IDT Amazon IoT Greengrass 版本支持的产品(在本例中为版本)和测试套件版本。
list-test-cases
-
列出给定测试组中的测试用例。支持以下选项:
run-suite
-
对某个设备池运行一组测试。以下是一些受支持的选项:
-
suite-id. 要运行的测试套件版本。如果未指定,IDT 将使用 tests 文件夹中的最新版本。
-
group-id. 要以逗号分隔的列表形式运行的测试组。如果未指定,IDT 将运行测试套件中的所有测试组。
-
test-id. 要以逗号分隔的列表形式运行的测试用例。指定后,group-id 必须指定单个组。
-
pool-id. 要测试的设备池。如果您在 device.json 文件中定义了多个设备池,则必须指定一个池。
-
upgrade-test-suite. 控制如何处理测试套件版本更新。从 IDT v3.0.0 开始,IDT 在线检查更新的测试套件版本。有关更多信息,请参阅 测试套件版本。
-
stop-on-first-failure. 将 IDT 配置为在第一次失败时停止执行。应将此选项与 group-id 结合使用来调试指定的测试组。在运行完整测试套件以生成资格认证报告时,请勿使用此选项。
-
update-idt. 设置对更新 IDT 的提示的响应。如果 IDT 检测到有更新的版本,输入 Y 将会停止执行测试。输入 N 将会继续执行测试。
-
update-managed-policy。如果 IDT 检测到用户的托管策略未更新,输入 Y 将会停止执行测试。输入 N 将会继续执行测试。
有关 run-suite 选项的更多信息,请使用 help 选项:
devicetester_[linux | mac | win_x86-64] run-suite -h
- IDT v2.3.0 and earlier
-
help
-
列出有关指定命令的信息。
list-groups
-
列出给定测试套件中的组。
list-suites
-
列出可用的测试套件。
run-suite
-
对某个设备池运行一组测试。
有关 run-suite 选项的更多信息,请使用 help 选项:
devicetester_[linux | mac | win_x86-64] run-suite -h