本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 “设备顾问” 示例 Amazon CLI
以下代码示例向您展示了如何使用 with Device Advisor 来执行操作和实现常见场景。 Amazon Command Line Interface
操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景和跨服务示例的上下文查看操作。
场景是展示如何通过在同一服务中调用多个函数来完成特定任务任务的代码示例。
每个示例都包含一个指向的链接 GitHub,您可以在其中找到有关如何在上下文中设置和运行代码的说明。
主题
操作
以下代码示例演示如何使用 create-suite-definition
。
- Amazon CLI
-
示例 1:创建 IoT 设备顾问测试套件
以下
create-suite-definition
示例使用指定的套件定义配置在 Amazon IoT 中创建设备顾问测试套件。aws iotdeviceadvisor create-suite-definition \ --suite-definition-configuration '{ \ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": false, \ "rootGroup": "{\"configuration\":{},\"tests\":[{\"name\":\"MQTT Connect\",\"configuration\":{\"EXECUTION_TIMEOUT\":120},\"tests\":[{\"name\":\"MQTT_Connect\",\"configuration\":{},\"test\":{\"id\":\"MQTT_Connect\",\"testCase\":null,\"version\":\"0.0.0\"}}]}]}", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'
输出:
{ "suiteDefinitionId": "0jtsgio7yenu", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/0jtsgio7yenu", "suiteDefinitionName": "TestSuiteName", "createdAt": "2022-12-02T11:38:13.263000-05:00" }
有关更多信息,请参阅《Amazon IoT Core 开发者指南》中的创建测试套件定义。
示例 2:创建 IoT 设备顾问最新资格测试套件
以下
create-suite-definition
示例使用 Amazon 物联网中的最新版本和指定的套件定义配置创建设备顾问资格测试套件。aws iotdeviceadvisor create-suite-definition \ --suite-definition-configuration '{ \ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": true, \ "rootGroup": "", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'
输出:
{ "suiteDefinitionId": "txgsuolk2myj", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/txgsuolk2myj", "suiteDefinitionName": "TestSuiteName", "createdAt": "2022-12-02T11:38:13.263000-05:00" }
有关更多信息,请参阅《Amazon IoT Core 开发者指南》中的创建测试套件定义。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考CreateSuiteDefinition
中的。
-
以下代码示例演示如何使用 delete-suite-definition
。
- Amazon CLI
-
删除 IoT 设备顾问测试套件
以下
delete-suite-definition
示例删除具有指定套件定义 ID 的设备顾问测试套件。aws iotdeviceadvisor delete-suite-definition \ --suite-definition-id 0jtsgio7yenu
此命令不生成任何输出。
有关更多信息,请参阅 Amazon IoT API 参考DeleteSuiteDefinition中的。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteSuiteDefinition
中的。
-
以下代码示例演示如何使用 get-endpoint
。
- Amazon CLI
-
示例 1:获取有关 IoT 设备顾问账户级端点的信息
以下
get-endpoint
示例获取有关设备顾问账户级别测试端点的信息。aws iotdeviceadvisor get-endpoint
输出:
{ "endpoint": "t6y4c143x9sfo.deviceadvisor.iot.us-east-1.amazonaws.com" }
示例 2:获取有关 IoT 设备顾问设备级端点的信息
以下
get-endpoint
示例获取有关具有指定内容 arn 或 certificate-arn 的设备顾问设备级测试端点的信息。aws iotdeviceadvisor get-endpoint \ --thing-arn arn:aws:iot:us-east-1:123456789012:thing/MyIotThing
输出:
{ "endpoint": "tdb7719be5t6y4c143x9sfo.deviceadvisor.iot.us-east-1.amazonaws.com" }
有关更多信息,请参阅 Amazon IoT Core 开发者指南中的获取测试端点。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetEndpoint
中的。
-
以下代码示例演示如何使用 get-suite-definition
。
- Amazon CLI
-
获取有关 IoT 设备顾问测试套件的信息
以下
get-suite-definition
示例获取有关具有指定套件定义 ID 的 aevice Advisor 测试套件的信息。aws iotdeviceadvisor get-suite-definition \ --suite-definition-id qqcsmtyyjabl
输出:
{ "suiteDefinitionId": "qqcsmtyyjabl", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/qqcsmtyyjabl", "suiteDefinitionVersion": "v1", "latestVersion": "v1", "suiteDefinitionConfiguration": { "suiteDefinitionName": "MQTT connection", "devices": [], "intendedForQualification": false, "isLongDurationTest": false, "rootGroup": "{\"configuration\":{},\"tests\":[{\"id\":\"uta5d9j1kvwc\",\"name\":\"Test group 1\",\"configuration\":{},\"tests\":[{\"id\":\"awr8pq5vc9yp\",\"name\":\"MQTT Connect\",\"configuration\":{},\"test\":{\"id\":\"MQTT_Connect\",\"testCase\":null,\"version\":\"0.0.0\"}}]}]}", "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole", "protocol": "MqttV3_1_1" }, "createdAt": "2022-11-11T22:28:52.389000-05:00", "lastModifiedAt": "2022-11-11T22:28:52.389000-05:00", "tags": {} }
有关更多信息,请参阅 Amazon IoT Core 开发者指南中的获取测试套件定义。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetSuiteDefinition
中的。
-
以下代码示例演示如何使用 get-suite-run-report
。
- Amazon CLI
-
要获取有关 IoT 设备顾问合格测试套件的信息,请运行报告
以下
get-suite-run-report
示例获取了使用指定套件定义 ID 和套件运行 ID 成功运行的设备顾问合格测试套件的报告下载链接。aws iotdeviceadvisor get-suite-run-report \ --suite-definition-id ztvb5aek4w4x \ --suite-run-id p6awv83nre6v
输出:
{ "qualificationReportDownloadUrl": "https://senate-apn-reports-us-east-1-prod.s3.amazonaws.com/report.downloadlink" }
有关更多信息,请参阅《Amazon IoT Core 开发者指南》中的 “获取成功运行的资格测试套件的资格报告”。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetSuiteRunReport
中的。
-
以下代码示例演示如何使用 get-suite-run
。
- Amazon CLI
-
获取有关 IoT 设备顾问测试套件运行状态的信息
以下
get-suite-run
示例使用指定的套件定义 ID 和套件运行 ID 获取有关设备顾问测试套件运行状态的信息。aws iotdeviceadvisor get-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-run-id nzlfyhaa18oa
输出:
{ "suiteDefinitionId": "qqcsmtyyjabl", "suiteDefinitionVersion": "v1", "suiteRunId": "nzlfyhaa18oa", "suiteRunArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suiterun/qqcsmtyyjabl/nzlfyhaa18oa", "suiteRunConfiguration": { "primaryDevice": { "thingArn": "arn:aws:iot:us-east-1:123456789012:thing/MyIotThing", "certificateArn": "arn:aws:iot:us-east-1:123456789012:cert/certFile" }, "parallelRun": false }, "testResult": { "groups": [ { "groupId": "uta5d9j1kvwc", "groupName": "Test group 1", "tests": [ { "testCaseRunId": "2ve2twrqyr0s", "testCaseDefinitionId": "awr8pq5vc9yp", "testCaseDefinitionName": "MQTT Connect", "status": "PASS", "startTime": "2022-11-12T00:01:53.693000-05:00", "endTime": "2022-11-12T00:02:15.443000-05:00", "logUrl": "https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#logEventViewer:group=/aws/iot/deviceadvisor/qqcsmtyyjabl;stream=nzlfyhaa18oa_2ve2twrqyr0s", "warnings": "null", "failure": "null" } ] } ] }, "startTime": "2022-11-12T00:01:52.673000-05:00", "endTime": "2022-11-12T00:02:16.496000-05:00", "status": "PASS", "tags": {} }
有关更多信息,请参阅《Amazon 物联网核心开发者指南》中的启动测试套件。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetSuiteRun
中的。
-
以下代码示例演示如何使用 list-suite-definitions
。
- Amazon CLI
-
示例 1:列出您创建的 IoT 设备顾问测试套件
以下
list-suite-definitions
示例列出了您在 Amazon 物联网中创建的最多 25 个设备顾问测试套件。如果您有超过 25 个测试套件,则输出中将显示 “nextToken”。你可以使用这个 “nextToken” 来显示你创建的其余测试套件。aws iotdeviceadvisor list-suite-definitions
输出:
{ "suiteDefinitionInformationList": [ { "suiteDefinitionId": "3hsn88h4p2g5", "suiteDefinitionName": "TestSuite1", "defaultDevices": [ { "thingArn": "arn:aws:iot:us-east-1:123456789012:thing/MyIotThing" } ], "intendedForQualification": false, "isLongDurationTest": false, "protocol": "MqttV3_1_1", "createdAt": "2022-11-17T14:15:56.830000-05:00" }, { ...... } ], "nextToken": "nextTokenValue" }
示例 2:列出您使用指定设置创建的 IoT 设备顾问测试套件
以下
list-suite-definitions
示例列出了您在 Amazon 物联网中创建的具有指定最大结果编号的设备顾问测试套件。如果您的测试套件数量超过最大数量,则输出中将显示 “nextToken”。如果您有 “nextToken”,则可以使用 “nextToken” 来显示您创建的以前未显示的测试套件。aws iotdeviceadvisor list-suite-definitions \ --max-result 1 \ --next-token "nextTokenValue"
输出:
{ "suiteDefinitionInformationList": [ { "suiteDefinitionId": "ztvb5aew4w4x", "suiteDefinitionName": "TestSuite2", "defaultDevices": [], "intendedForQualification": true, "isLongDurationTest": false, "protocol": "MqttV3_1_1", "createdAt": "2022-11-17T14:15:56.830000-05:00" } ], "nextToken": "nextTokenValue" }
有关更多信息,请参阅 Amazon IoT API 参考ListSuiteDefinitions中的。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListSuiteDefinitions
中的。
-
以下代码示例演示如何使用 list-suite-runs
。
- Amazon CLI
-
示例 1:列出有关指定 IoT 设备顾问测试套件运行状态的所有信息
以下
list-suite-runs
示例列出了有关具有指定套件定义 ID 的设备顾问测试套件运行状态的所有信息。如果您运行的测试套件超过 25 个,则输出中将显示 “nextToken”。你可以使用这个 “nextToken” 来显示测试套件的其余运行情况。aws iotdeviceadvisor list-suite-runs \ --suite-definition-id ztvb5aew4w4x
输出:
{ "suiteRunsList": [ { "suiteDefinitionId": "ztvb5aew4w4x", "suiteDefinitionVersion": "v1", "suiteDefinitionName": "TestSuite", "suiteRunId": "p6awv89nre6v", "createdAt": "2022-12-01T16:33:14.212000-05:00", "startedAt": "2022-12-01T16:33:15.710000-05:00", "endAt": "2022-12-01T16:42:03.323000-05:00", "status": "PASS", "passed": 6, "failed": 0 } ] }
示例 2:要列出有关指定 IoT Device Advisor 测试套件的信息,请使用指定设置运行状态
以下
list-suite-runs
示例列出了有关具有指定套件定义 ID 和指定的最大结果编号的设备顾问测试套件运行状态的信息。如果您的测试套件运行次数超过了最大数量,则输出中将显示 “nextToken”。如果你有 “nextToken”,你可以使用 “nextToken” 来显示以前未显示的测试套件运行情况。aws iotdeviceadvisor list-suite-runs \ --suite-definition-id qqcsmtyyjaml \ --max-result 1 \ --next-token "nextTokenValue"
输出:
{ "suiteRunsList": [ { "suiteDefinitionId": "qqcsmtyyjaml", "suiteDefinitionVersion": "v1", "suiteDefinitionName": "MQTT connection", "suiteRunId": "gz9vm2s6d2jy", "createdAt": "2022-12-01T20:10:27.079000-05:00", "startedAt": "2022-12-01T20:10:28.003000-05:00", "endAt": "2022-12-01T20:10:45.084000-05:00", "status": "STOPPED", "passed": 0, "failed": 0 } ], "nextToken": "nextTokenValue" }
有关更多信息,请参阅 Amazon IoT API 参考ListSuiteRuns中的。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListSuiteRuns
中的。
-
以下代码示例演示如何使用 list-tags-for-resource
。
- Amazon CLI
-
列出附加到 IoT 设备顾问资源的标签
以下
list-tags-for-resource
示例列出了附加到设备顾问资源的标签。设备顾问资源可以是 Suitedefinition-Arn 或 Suiterun-Arn。aws iotdeviceadvisor list-tags-for-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny
输出:
{ "tags": { "TestTagKey": "TestTagValue" } }
有关更多信息,请参阅 I Amazon oT API 参考和《服务授权参考》ListTagsForResource中的 I Amazon oT Core Device Advisor 定义的资源类型。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListTagsForResource
中的。
-
以下代码示例演示如何使用 start-suite-run
。
- Amazon CLI
-
要启动 IoT 设备顾问测试套件,请运行
以下
start-suite-run
示例列出了您 Amazon 账户中可用的微件。aws iotdeviceadvisor start-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-definition-version v1 \ --suite-run-configuration '{"primaryDevice":{"thingArn": "arn:aws:iot:us-east-1:123456789012:thing/MyIotThing","certificateArn":"arn:aws:iot:us-east-1:123456789012:cert/certFile"}}'
输出:
{ "suiteRunId": "pwmucgw7lt9s", "suiteRunArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suiterun/qqcsmtyyjabl/pwmucgw7lk9s", "createdAt": "2022-12-02T15:43:05.581000-05:00" }
有关更多信息,请参阅 Amazon IoT Core 开发者指南中的启动测试套件运行。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考StartSuiteRun
中的。
-
以下代码示例演示如何使用 stop-suite-run
。
- Amazon CLI
-
停止当前正在运行的 IoT 设备顾问测试套件
以下
stop-suite-run
示例停止了当前正在使用指定套件定义 ID 和套件运行 ID 运行的设备顾问测试套件。aws iotdeviceadvisor stop-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-run-id nzlfyhaa18oa
此命令不生成任何输出。
有关更多信息,请参阅《Amazon 物联网核心开发者指南》中的停止测试套件运行。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考StopSuiteRun
中的。
-
以下代码示例演示如何使用 tag-resource
。
- Amazon CLI
-
添加和修改 IoT 设备顾问资源的现有标签
以下
tag-resource
示例使用指定的资源 arn 和标签添加和修改设备顾问资源的现有标签。设备顾问资源可以是 Suitedefinition-Arn 或 Suiterun-Arn。aws iotdeviceadvisor tag-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny \ --tags '{"TagKey": "TagValue"}'
此命令不生成任何输出。
有关更多信息,请参阅 I Amazon oT API 参考和《服务授权参考》TagResource中的 I Amazon oT Core Device Advisor 定义的资源类型。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考TagResource
中的。
-
以下代码示例演示如何使用 untag-resource
。
- Amazon CLI
-
从 IoT 设备顾问资源中移除现有标签
以下
untag-resource
示例使用指定的资源 arn 和标签密钥从设备顾问资源中删除现有标签。设备顾问资源可以是 Suitedefinition-Arn 或 Suiterun-Arn。aws iotdeviceadvisor untag-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny \ --tag-keys "TagKey"
此命令不生成任何输出。
有关更多信息,请参阅 I Amazon oT API 参考和《服务授权参考》UntagResource中的 I Amazon oT Core Device Advisor 定义的资源类型。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UntagResource
中的。
-
以下代码示例演示如何使用 update-suite-definition
。
- Amazon CLI
-
示例 1:更新 IoT 设备顾问测试套件
以下
update-suite-definition
示例使用指定的套件定义 ID 和套件定义配置更新 I Amazon oT 中的设备顾问测试套件。aws iotdeviceadvisor update-suite-definition \ --suite-definition-id 3hsn88h4p2g5 \ --suite-definition-configuration '{ \ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": false, \ "rootGroup": "{\"configuration\":{},\"tests\":[{\"name\":\"MQTT Connect\",\"configuration\":{\"EXECUTION_TIMEOUT\":120},\"tests\":[{\"name\":\"MQTT_Connect\",\"configuration\":{},\"test\":{\"id\":\"MQTT_Connect\",\"testCase\":null,\"version\":\"0.0.0\"}}]}]}", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'
输出:
{ "suiteDefinitionId": "3hsn88h4p2g5", "suiteDefinitionName": "TestSuiteName", "suiteDefinitionVersion": "v3", "createdAt": "2022-11-17T14:15:56.830000-05:00", "lastUpdatedAt": "2022-12-02T16:02:45.857000-05:00" }
示例 2:更新 IoT 设备顾问资格测试套件
以下
update-suite-definition
示例使用指定的套件定义 ID 和套件定义配置更新 Amazon 物联网中的设备顾问资格测试套件。aws iotdeviceadvisor update-suite-definition \ --suite-definition-id txgsuolk2myj \ --suite-definition-configuration '{ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": true, \ "rootGroup": "", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'
输出:
{ "suiteDefinitionId": "txgsuolk2myj", "suiteDefinitionName": "TestSuiteName", "suiteDefinitionVersion": "v3", "createdAt": "2022-11-17T14:15:56.830000-05:00", "lastUpdatedAt": "2022-12-02T16:02:45.857000-05:00" }
有关更多信息,请参阅 Amazon IoT API 参考UpdateSuiteDefinition中的。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UpdateSuiteDefinition
中的。
-