AWS IoT Greengrass Version 1 trat am 30. Juni 2023 in die erweiterte Lebensphase ein. Weitere Informationen finden Sie in der AWS IoT Greengrass V1 Wartungsrichtlinie. Nach diesem Datum AWS IoT Greengrass V1 werden keine Updates mehr veröffentlicht, die Funktionen, Verbesserungen, Bugfixes oder Sicherheitspatches bieten. Geräte, die auf laufen, werden AWS IoT Greengrass V1 nicht gestört und funktionieren weiterhin und stellen eine Verbindung zur Cloud her. Wir empfehlen Ihnen dringend, zu migrieren AWS IoT Greengrass Version 2, da dies wichtige neue Funktionen und Unterstützung für zusätzliche Plattformen bietet.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Tutorial: Erstellen und führen Sie die Beispiel-IDT-Testsuite aus
DieAWS IoTDer Download des Gerätetesters enthält den Quellcode für eine Beispiel-Testsuite. Sie können dieses Tutorial ausfüllen, um die Beispiel-Testsuite zu erstellen und auszuführen, um zu verstehen, wie Sie es verwenden könnenAWS IoTDevice Tester fürAWS IoT GreengrassSo führen Sie benutzerdefinierte Test-Suites aus.
In diesem Tutorial führen Sie die folgenden Schritte aus:
Voraussetzungen
Zum Durcharbeiten dieses Tutorials ist Folgendes erforderlich:
-
-Hostcomputer -Anforderungen
-
Neueste Version vonAWS IoTDevice Tester
-
Python
3.7 oder höher Führen Sie den folgenden Befehl aus, um die Version von Python zu überprüfen, die auf dem Computer installiert ist:
python3 --version
Wenn die Verwendung dieses Befehls unter Windows einen Fehler zurückgibt, verwenden Sie
python --version
Stattdessen geschieht Folgendes. Wenn die zurückgegebene Versionsnummer 3.7 oder höher ist, führen Sie den folgenden Befehl in einem Powershell-Terminal aus, um festzulegenpython3
als Alias fürpython
befehl.Set-Alias -Name "python3" -Value "python"
Wenn keine Versionsinformationen zurückgegeben werden oder die Versionsnummer kleiner als 3.7 ist, befolgen Sie die Anweisungen unterPython
So installieren Sie Python 3.7+. Weitere Informationen finden Sie im .Python-Dokumentation aus. -
So überprüfen Sie das
urllib3
Führen Sie den folgenden Befehl aus:python3 -c 'import urllib3'
Wenn
urllib3
Führen Sie den folgenden Befehl aus, um es zu installieren:python3 -m pip install urllib3
-
-
Anforderungen an Speichergeräte
-
Ein Gerät mit einem Linux-Betriebssystem und einer Netzwerkverbindung zum selben Netzwerk wie Ihr Host-Computer.
Wir empfehlen Ihnen, zu verwendenRaspberry Pi
mit Raspberry Pi OS. Stellen Sie sicher, dass Sie einrichtenSSH So verbinden Sie sich auf Ihrem Raspberry Pi aus der Ferne.
-
Geräteinformationen für IDT konfigurieren
Konfigurieren Sie Ihre Geräteinformationen, damit IDT den Test ausführen kann. Sie müssen diedevice.json
Vorlage befindet sich im
Ordner mit den folgenden Informationen.<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>
" } } } } ] } ]
In derdevices
Geben Sie die folgenden Informationen an:
id
-
Eine benutzerdefinierte eindeutige Kennung für das Gerät.
connectivity.ip
-
Die IP-Adresse Ihres Geräts.
connectivity.port
-
Optional. Die Portnummer, die für SSH-Verbindungen zu Ihrem Gerät verwendet werden soll.
connectivity.auth
-
Authentifizierungsinformationen für die Verbindung.
Diese Eigenschaft gilt nur, wenn
connectivity.protocol
aufssh
festgelegt ist.connectivity.auth.method
-
Die Authentifizierungsmethode, die für den Zugriff über ein bestimmtes Verbindungsprotokoll auf ein Gerät verwendet wird.
Unterstützte Werte sind:
-
pki
-
password
-
connectivity.auth.credentials
-
Die für die Authentifizierung verwendeten Anmeldeinformationen.
connectivity.auth.credentials.user
-
Der Benutzername, mit dem Sie sich bei Ihrem Gerät angemeldet haben.
connectivity.auth.credentials.privKeyPath
-
Der vollständige Pfad zum privaten Schlüssel, der für die Anmeldung bei Ihrem Gerät verwendet wird.
Dieser Wert gilt nur, wenn
connectivity.auth.method
aufpki
festgelegt ist. devices.connectivity.auth.credentials.password
-
Das Passwort für die Anmeldung bei Ihrem Gerät.
Dieser Wert gilt nur, wenn
connectivity.auth.method
aufpassword
festgelegt ist.
Anmerkung
Geben Sie privKeyPath
nur an, wenn method
auf pki
gesetzt ist.
Geben Sie password
nur an, wenn method
auf password
gesetzt ist.
Bauen Sie die Beispiel-Testsuite
Die
-Ordner enthält Beispielkonfigurationsdateien, Quellcode und das IDT Client SDK, das Sie mit den bereitgestellten Build-Skripten zu einer Testsuite kombinieren können. Die folgende Verzeichnisstruktur zeigt den Speicherort dieser Beispieldateien:<device-tester-extract-location>
/samples/python
<device-tester-extract-location>
├── ... ├── tests ├── samples │ ├── ... │ └── python │ ├── configuration │ ├── src │ └── build-scripts │ ├── build.sh │ └── build.ps1 └── sdks ├── ... └── python └── idt_client
Um die Testsuite zu erstellen, führen Sie die folgenden Befehle auf Ihrem Host-Computer aus:
Dies erstellt die Beispiel-Testsuite imIDTSampleSuitePython_1.0.0
Ordner innerhalb des
folder. Überprüfen Sie die Dateien im<device-tester-extract-location>
/testsIDTSampleSuitePython_1.0.0
, um zu verstehen, wie die Beispiel-Test-Suite strukturiert ist, und verschiedene Beispiele für ausführbare Testfalldateien und Testkonfiguration JSON-Dateien zu sehen.
Nächster Schritt: Verwenden Sie IDTführen Sie die Beispiel-Testsuite ausdie du geschaffen hast.
Verwenden Sie IDT, um die Beispiel-Testsuite auszuführen
Um die Beispiel-Testsuite auszuführen, führen Sie die folgenden Befehle auf Ihrem Host-Computer aus:
cd
<device-tester-extract-location>
/bin ./devicetester_[linux | mac | win_x86-64]
run-suite --suite-id IDTSampleSuitePython
IDT führt die Beispiel-Testsuite aus und streamt die Ergebnisse zur Konsole. Wenn der Test abgeschlossen ist, sehen Sie die folgenden Informationen:
========== 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
Fehlerbehebung
Verwenden Sie die folgenden Informationen, um Probleme beim Ausfüllen des Tutorials zu beheben.
Testfall wird nicht erfolgreich ausgeführt
Wenn der Test nicht erfolgreich ausgeführt wird, streamt IDT die Fehlerprotokolle an die Konsole, die Ihnen bei der Fehlerbehebung beim Testlauf helfen können. Stellen Sie sicher, dass Sie alle treffenVoraussetzungenFür dieses Tutorial.
Es kann keine Verbindung zum zu testenden Gerät hergestellt werden
Überprüfen Sie Folgendes:
-
Ihre
device.json
enthält die richtige IP-Adresse, den Port und die richtigen Authentifizierungsinformationen. -
Sie können von Ihrem Host-Computer aus über SSH eine Verbindung zu Ihrem Gerät herstellen.