Exemplos do Device Advisor usando a AWS CLI - AWS Command Line Interface

Exemplos do Device Advisor usando a AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando a AWS Command Line Interface com o Device Advisor.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar create-suite-definition.

AWS CLI

Exemplo 1: criar uma suíte de testes do IoT Device Advisor

O exemplo create-suite-definition a seguir cria uma suíte de testes do Device Advisor no AWS IoT com a configuração de definição de suíte especificada.

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"}'

Saída:

{ "suiteDefinitionId": "0jtsgio7yenu", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/0jtsgio7yenu", "suiteDefinitionName": "TestSuiteName", "createdAt": "2022-12-02T11:38:13.263000-05:00" }

Para obter mais informações, consulte Criar uma definição de suíte de testes no Guia do desenvolvedor do AWS IoT Core.

Exemplo 2: criar uma suíte de testes Latest Qualification do IoT Device Advisor

O exemplo create-suite-definition a seguir cria uma suíte de testes de qualificação do Device Advisor com a versão mais recente no AWS IoT usando a configuração de definição de suíte especificada.

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"}'

Saída:

{ "suiteDefinitionId": "txgsuolk2myj", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/txgsuolk2myj", "suiteDefinitionName": "TestSuiteName", "createdAt": "2022-12-02T11:38:13.263000-05:00" }

Para obter mais informações, consulte Criar uma definição de suíte de testes no Guia do desenvolvedor do AWS IoT Core.

O código de exemplo a seguir mostra como usar delete-suite-definition.

AWS CLI

Para excluir a suíte de testes do IoT Device Advisor

O exemplo delete-suite-definition a seguir exclui a suíte de testes do Device Advisor com o ID de definição da suíte especificado.

aws iotdeviceadvisor delete-suite-definition \ --suite-definition-id 0jtsgio7yenu

Este comando não produz saída.

Para obter mais informações, consulte DeleteSuiteDefinition na Referência da API do AWS IoT.

O código de exemplo a seguir mostra como usar get-endpoint.

AWS CLI

Exemplo 1: obter as informações sobre um endpoint em nível de conta do IoT Device Advisor

O exemplo get-endpoint a seguir obtém as informações sobre um endpoint de teste em nível de conta do Device Advisor.

aws iotdeviceadvisor get-endpoint

Saída:

{ "endpoint": "t6y4c143x9sfo.deviceadvisor.iot.us-east-1.amazonaws.com" }

Exemplo 2: obter informações sobre um endpoint em nível de dispositivo do IoT Device Advisor

O exemplo get-endpoint a seguir obtém as informações sobre um endpoint de teste em nível de dispositivo do Device Advisor com o thing-arn ou certificate-arn especificado.

aws iotdeviceadvisor get-endpoint \ --thing-arn arn:aws:iot:us-east-1:123456789012:thing/MyIotThing

Saída:

{ "endpoint": "tdb7719be5t6y4c143x9sfo.deviceadvisor.iot.us-east-1.amazonaws.com" }

Para obter mais informações, consulte Obter um endpoint de teste no Guia do desenvolvedor do AWS IoT Core.

  • Para obter detalhes da API, consulte GetEndpoint na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-suite-definition.

AWS CLI

Para obter informações sobre uma suíte de testes do IoT Device Advisor

O exemplo get-suite-definition a seguir obtém as informações sobre uma suíte de testes do Device Advisor com o ID de definição da suíte especificado.

aws iotdeviceadvisor get-suite-definition \ --suite-definition-id qqcsmtyyjabl

Saída:

{ "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": {} }

Para obter mais informações, consulte Obter uma definição de suíte de testes no Guia do desenvolvedor do AWS IoT Core.

  • Para ver detalhes da API, consulte GetSuiteDefinition na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-suite-run-report.

AWS CLI

Para obter informações sobre um relatório de uma suíte de testes de qualificação do IoT Device Advisor

O exemplo get-suite-run-report a seguir obtém o link de download do relatório para uma execução bem-sucedida da suíte de testes de qualificação do Device Advisor com o ID de definição da suíte e o ID de execução da suíte especificados.

aws iotdeviceadvisor get-suite-run-report \ --suite-definition-id ztvb5aek4w4x \ --suite-run-id p6awv83nre6v

Saída:

{ "qualificationReportDownloadUrl": "https://senate-apn-reports-us-east-1-prod.s3.amazonaws.com/report.downloadlink" }

Para obter mais informações, consulte Obter um relatório de qualificação para uma execução bem-sucedida de uma suíte de testes de qualificação no Guia do Desenvolvedor do AWS IoT Core.

  • Para ver detalhes da API, consulte GetSuiteRunReport na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-suite-run.

AWS CLI

Para obter informações sobre o status de execução uma suíte de testes do IoT Device Advisor

O exemplo get-suite-run a seguir obtém as informações sobre o status de execução de uma suíte de testes do Device Advisor com o ID de definição da suíte especificado.

aws iotdeviceadvisor get-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-run-id nzlfyhaa18oa

Saída:

{ "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": {} }

Para obter mais informações, consulte Obter uma execução de suíte de testes no Guia do desenvolvedor do AWS IoT Core.

  • Para ver detalhes da API, consulte GetSuiteRun na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-suite-definitions.

AWS CLI

Exemplo 1: listar suítes de testes do IoT Device Advisor criadas

O exemplo list-suite-definitions a seguir lista até 25 suítes de teste do Device Advisor criadas no AWS IoT. Se houver mais de 25 suítes de teste, o "nextToken" será mostrado na saída. É possível usar esse "nextToken" para mostrar o resto das suítes de teste criadas.

aws iotdeviceadvisor list-suite-definitions

Saída:

{ "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" }

Exemplo 2: listar suítes de testes do IoT Device Advisor criadas com as configurações especificadas

O exemplo list-suite-definitions a seguir lista as suítes de testes do Device Advisor criadas no AWS IoT com o número máximo de resultados especificado. Se houver mais suítes de teste do que o número máximo, o "nextToken" será mostrado na saída. Se houver um "nextToken", é possível usar "nextToken" para mostrar as suítes de teste criadas que não foram mostradas antes.

aws iotdeviceadvisor list-suite-definitions \ --max-result 1 \ --next-token "nextTokenValue"

Saída:

{ "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" }

Para obter mais informações, consulte ListSuiteDefinitions na Referência da API do AWS IoT.

O código de exemplo a seguir mostra como usar list-suite-runs.

AWS CLI

Exemplo 1: listar todas as informações sobre o status de execução da suíte de testes do IoT Device Advisor especificada

O exemplo list-suite-runs a seguir lista todas as informações sobre o status de execução de uma suíte de testes do Device Advisor com o ID de definição da suíte especificado. Se houver mais de 25 execuções de suítes de teste, o "nextToken" será mostrado na saída. É possível usar esse "nextToken" para mostrar o resto das suítes de teste criadas.

aws iotdeviceadvisor list-suite-runs \ --suite-definition-id ztvb5aew4w4x

Saída:

{ "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 } ] }

Exemplo 2: listar todas as informações sobre o status de execução da suíte de testes do IoT Device Advisor com as configurações especificadas

O exemplo list-suite-runs a seguir lista todas as informações sobre o status de execução de uma suíte de testes do Device Advisor com o ID de definição da suíte e o número máximo de resultados especificados. Se houver mais execuções de suítes de teste do que o número máximo especificado, o "nextToken" será mostrado na saída. Se houver um "nextToken", é possível usar "nextToken" para mostrar as suítes de teste criadas que não foram mostradas antes.

aws iotdeviceadvisor list-suite-runs \ --suite-definition-id qqcsmtyyjaml \ --max-result 1 \ --next-token "nextTokenValue"

Saída:

{ "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" }

Para obter mais informações, consulte ListSuiteRuns na Referência da API do AWS IoT.

  • Para ver detalhes da API, consulte ListSuiteRuns na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-tags-for-resource.

AWS CLI

Para listar as tags anexadas a um recurso do IoT Device Advisor

O exemplo list-tags-for-resource a seguir lista as tags anexadas a um recurso do Device Advisor. O recurso do Device Advisor pode ser um Suitedefinition-Arn ou um Suiterun-Arn.

aws iotdeviceadvisor list-tags-for-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny

Saída:

{ "tags": { "TestTagKey": "TestTagValue" } }

Para obter mais informações, consulte ListTagsForResource na Referência da API do AWS IoT e Tipos de recursos definidos pelo AWS IoT Core Device Advisor na Referência de autorização de serviço.

  • Para ver detalhes sobre a API, consulte ListTagsForResource na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar start-suite-run.

AWS CLI

Para iniciar uma execução da suíte de testes do IoT Device Advisor

O exemplo start-suite-run a seguir lista os widgets disponíveis na sua conta da AWS.

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"}}'

Saída:

{ "suiteRunId": "pwmucgw7lt9s", "suiteRunArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suiterun/qqcsmtyyjabl/pwmucgw7lk9s", "createdAt": "2022-12-02T15:43:05.581000-05:00" }

Para obter mais informações, consulte Iniciar a execução de uma suíte de testes no Guia do desenvolvedor do AWS IoT Core.

  • Para ver detalhes da API, consulte StartSuiteRun na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar stop-suite-run.

AWS CLI

Para interromper a execução de uma suíte de testes do IoT Device Advisor

O exemplo stop-suite-run a seguir interrompe a execução de uma suíte de testes do Device Advisor com o ID de definição e ID de execução da suíte especificados.

aws iotdeviceadvisor stop-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-run-id nzlfyhaa18oa

Este comando não produz saída.

Para obter mais informações, consulte Interromper a execução de uma suíte de testes no Guia do desenvolvedor do AWS IoT Core.

  • Para ver detalhes da API, consulte StopSuiteRun na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar tag-resource.

AWS CLI

Para adicionar e modificar as tags existentes de um recurso do IoT Device Advisor

O exemplo tag-resource a seguir adiciona e modifica as tags existentes de um recurso do Device Advisor com o arn e as tags do recurso especificados. O recurso do Device Advisor pode ser um Suitedefinition-Arn ou um Suiterun-Arn.

aws iotdeviceadvisor tag-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny \ --tags '{"TagKey": "TagValue"}'

Este comando não produz saída.

Para obter mais informações, consulte TagResource na Referência da API do AWS IoT e Tipos de recursos definidos pelo AWS IoT Core Device Advisor na Referência de autorização de serviço.

  • Para obter detalhes da API, consulte TagResource na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar untag-resource.

AWS CLI

Para remover as tags existentes de um recurso do IoT Device Advisor

O exemplo untag-resource a seguir adiciona e modifica as tags existentes de um recurso do Device Advisor com o arn e a chave da tag do recurso especificados. O recurso do Device Advisor pode ser um Suitedefinition-Arn ou um Suiterun-Arn.

aws iotdeviceadvisor untag-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny \ --tag-keys "TagKey"

Este comando não produz saída.

Para obter mais informações, consulte UntagResource na Referência da API do AWS IoT e Tipos de recursos definidos pelo AWS IoT Core Device Advisor na Referência de autorização de serviço.

  • Para obter detalhes sobre a API, consulte UntagResource na AWS CLI Command Reference.

O código de exemplo a seguir mostra como usar update-suite-definition.

AWS CLI

Exemplo 1: atualizar uma suíte de testes do IoT Device Advisor

O exemplo update-suite-definition a seguir atualiza uma suíte de testes do Device Advisor no AWS IoT com o ID de definição e a definição de suíte especificados.

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"}'

Saída:

{ "suiteDefinitionId": "3hsn88h4p2g5", "suiteDefinitionName": "TestSuiteName", "suiteDefinitionVersion": "v3", "createdAt": "2022-11-17T14:15:56.830000-05:00", "lastUpdatedAt": "2022-12-02T16:02:45.857000-05:00" }

Exemplo 2: atualizar uma suíte de testes de quantificação do IoT Device Advisor

O exemplo update-suite-definition a seguir atualiza uma suíte de testes de quantificação do Device Advisor no AWS IoT com o ID de definição e a definição de suíte especificados.

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"}'

Saída:

{ "suiteDefinitionId": "txgsuolk2myj", "suiteDefinitionName": "TestSuiteName", "suiteDefinitionVersion": "v3", "createdAt": "2022-11-17T14:15:56.830000-05:00", "lastUpdatedAt": "2022-12-02T16:02:45.857000-05:00" }

Para obter mais informações, consulte UpdateSuiteDefinition na Referência da API do AWS IoT.