チュートリアル: IDT テストスイートのビルドと実行 - AWS IoT Greengrass

のドキュメントを表示していますAWS IoT Greengrass Version 1。AWS IoT Greengrass Version 2の最新のメジャーバージョンです。AWS IoT Greengrass。の使用方法の詳細については、「」を参照してください。AWS IoT Greengrass V2の詳細については、AWS IoT Greengrass Version 2開発者ガイド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

チュートリアル: IDT テストスイートのビルドと実行

-AWS IoTDevice Tester のダウンロードには、サンプルテストスイートのソースコードが含まれています。このチュートリアルを完了して、サンプルテストスイートをビルドして実行し、AWS IoTDevice Tester forAWS IoT Greengrassカスタムテストスイートを実行します。

Prerequisites

このチュートリアルを完了するには、以下が必要です。

  • ホストコンピュータの要件

    • の最新バージョンAWS IoTDevice Tester

    • Python3.7 以降

      コンピュータにインストールされているPythonのバージョンを確認するには、次のコマンドを実行します。

      python3 --version

      Windowsでは、このコマンドを使用してエラーが返された場合は、python --version代わりに、とします。返されたバージョン番号が 3.7 以上の場合は、Powershell 端末で次のコマンドを実行してpython3のエイリアスを指定します。pythonコマンド。

      Set-Alias -Name "python3" -Value "python"

      バージョン情報が返されない場合、またはバージョン番号が 3.7 未満の場合は、Python をダウンロードしています。Python 3.7 以降をインストールするには。詳細については、「」を参照してください。Python のドキュメント

    • urllib3

      ことを確認するにはurllib3が正しくインストールされていることを確認するには、次のコマンドを実行します。

      python3 -c 'import urllib3'

      もしurllib3がインストールされていない場合は、次のコマンドを実行してインストールします。

      python3 -m pip install urllib3
  • デバイスの要件

    • Linux オペレーティングシステムと、ホストコンピュータと同じネットワークへのネットワーク接続を持つデバイス。

      を使用することをお勧めします。Raspberry πラズベリーパイのOSと. 必ず設定してください。SSHリモートで接続して、Raspberry Pi にリモートで接続します。

IDT のデバイス情報の構成

IDT でテストを実行するためのデバイス情報を設定します。更新する必要があります。device.jsonテンプレートにある<device-tester-extract-location>/configsフォルダーに以下の情報を入力します。

[ { "id": "pool", "sku": "N/A", "devices": [ { "id": "<device-id>", "connectivity": { "protocol": "ssh", "ip": "<ip-address>", "port": "<port>", "auth": { "method": "pki | password", "credentials": { "user": "<user-name>", "privKeyPath": "/path/to/private/key", "password": "<password>" } } } } ] } ]

devicesオブジェクトには、次の情報を入力します。

id

デバイスのユーザー定義の一意の識別子。

connectivity.ip

デバイスの IP アドレス。

connectivity.port

オプション。デバイスへの SSH 接続に使用するポート番号。

connectivity.auth

接続の認証情報。

このプロパティは、connectivity.protocolssh に設定されている場合にのみ適用されます。

connectivity.auth.method

指定された接続プロトコルを介してデバイスにアクセスするために使用される認証方法。

サポートされている値は以下のとおりです。

  • pki

  • password

connectivity.auth.credentials

認証に使用される認証情報。

connectivity.auth.credentials.user

デバイスへのサインインに使用するユーザー名。

connectivity.auth.credentials.privKeyPath

デバイスにサインインするためのプライベートキーへの完全パス。

この値は、connectivity.auth.methodpki に設定されている場合にのみ適用されます。

devices.connectivity.auth.credentials.password

デバイスにサインインするためのパスワード。

この値は、connectivity.auth.methodpassword に設定されている場合にのみ適用されます。

注記

methodpki に設定されている場合のみ privKeyPath を指定します。

methodpassword に設定されている場合のみ password を指定します。

サンプル・テスト・スイートの構築

-<device-tester-extract-location>/samples/pythonフォルダーには、サンプル構成ファイル、ソースコード、および IDT Client SDK が含まれており、提供されたビルドスクリプトを使用してテストスイートに結合できます。次のディレクトリツリーは、これらのサンプルファイルの場所を示しています。

<device-tester-extract-location> ├── ... ├── tests ├── samples │ ├── ... │ └── python │ ├── configuration │ ├── src │ └── build-scripts │ ├── build.sh │ └── build.ps1 └── sdks ├── ... └── python └── idt_client

テストスイートを構築するには、ホストコンピュータで次のコマンドを実行します。

Windows
cd <device-tester-extract-location>/samples/python/build-scripts ./build.ps1
Linux, macOS, or UNIX
cd <device-tester-extract-location>/samples/python/build-scripts ./build.sh

これにより、サンプルテストスイートがIDTSampleSuitePython_1.0.0フォルダ内の<device-tester-extract-location>/testsfolder ファイルを確認するには、IDTSampleSuitePython_1.0.0フォルダーを使用して、サンプルのテストスイートの構造を理解し、テストケースの実行ファイルとテスト設定 JSON ファイルのさまざまな例を参照してください。

次のステップ: IDT を使用してサンプル・テスト・スイートの実行作成したことを確認します。

IDT を使用してサンプルテストスイートを実行する

サンプルテストスイートを実行するには、ホストコンピューターで次のコマンドを実行します。

cd <device-tester-extract-location>/bin ./devicetester_[linux | mac | win_x86-64] run-suite --suite-id IDTSampleSuitePython

IDT はサンプルテストスイートを実行し、結果をコンソールにストリーミングします。テストの実行が完了すると、次の情報が表示されます。

========== Test Summary ========== Execution Time: 5s Tests Completed: 4 Tests Passed: 4 Tests Failed: 0 Tests Skipped: 0 ---------------------------------- Test Groups: sample_group: PASSED ---------------------------------- Path to IoT Device Tester Report: /path/to/devicetester/results/87e673c6-1226-11eb-9269-8c8590419f30/awsiotdevicetester_report.xml Path to Test Execution Logs: /path/to/devicetester/results/87e673c6-1226-11eb-9269-8c8590419f30/logs Path to Aggregated JUnit Report: /path/to/devicetester/results/87e673c6-1226-11eb-9269-8c8590419f30/IDTSampleSuitePython_Report.xml

Troubleshooting

チュートリアルを完了する際の問題を解決するには、以下の情報が役立ちます。

テストケースが正常に実行されない

テストが正常に実行されない場合、IDT は、テスト実行のトラブルシューティングに役立つエラーログをコンソールにストリーミングします。すべてのを満たしていることを確認します。の前提条件このチュートリアルでは、と指定します。

テスト対象のデバイスに接続できません。

以下について確認してください。

  • あなたのdevice.jsonファイルには、正しい IP アドレス、ポート、および認証情報が含まれています。

  • ホストコンピュータから SSH 経由でデバイスに接続できます。