Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Le AWS IoT Device Tester téléchargement inclut le code source d'un exemple de suite de tests. Vous pouvez suivre ce didacticiel pour créer et exécuter l'exemple de suite de tests afin de comprendre comment vous pouvez utiliser IDT AWS IoT Greengrass pour exécuter des suites de tests personnalisées.
Dans ce didacticiel, vous allez effectuer les étapes suivantes :
Prérequis
Pour suivre ce didacticiel, vous aurez besoin des éléments suivants :
-
Exigences relatives à l'ordinateur hôte
-
Dernière version de AWS IoT Device Tester
-
Python
3.7 ou version ultérieure Pour vérifier la version de Python installée sur votre ordinateur, exécutez la commande suivante :
python3 --version
Sous Windows, si l'utilisation de cette commande renvoie une erreur, utilisez-la à la
python --version
place. Si le numéro de version renvoyé est 3.7 ou supérieur, exécutez la commande suivante dans un terminal Powershell pour la définirpython3
comme alias pour votrepython
commande.Set-Alias -Name "python3" -Value "python"
Si aucune information de version n'est renvoyée ou si le numéro de version est inférieur à 3.7, suivez les instructions de la section Télécharger Python
pour installer Python 3.7+. Pour plus d'informations, consultez la documentation Python . -
Pour vérifier qu'
urllib3
il est correctement installé, exécutez la commande suivante :python3 -c 'import urllib3'
S'il n'
urllib3
est pas installé, exécutez la commande suivante pour l'installer :python3 -m pip install urllib3
-
-
Exigences relatives aux dispositifs
-
Appareil doté d'un système d'exploitation Linux et d'une connexion réseau au même réseau que votre ordinateur hôte.
Nous vous recommandons d'utiliser un Raspberry Pi
avec le système d'exploitation Raspberry Pi. Assurez-vous de configurer SSH sur votre Raspberry Pi pour vous y connecter à distance.
-
Configurer les informations de l'appareil pour IDT
Configurez les informations de votre appareil pour qu'IDT exécute le test. Vous devez mettre à jour le device.json
modèle situé dans le
dossier avec les informations suivantes.<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>
"
}
}
}
}
]
}
]
Dans l'devices
objet, fournissez les informations suivantes :
id
-
Identifiant unique défini par l'utilisateur pour votre appareil.
connectivity.ip
-
L'adresse IP de votre appareil.
connectivity.port
-
Facultatif. Le numéro de port à utiliser pour les connexions SSH à votre appareil.
connectivity.auth
-
Informations d'authentification pour la connexion.
Cette propriété s'applique uniquement si
connectivity.protocol
est défini surssh
.connectivity.auth.method
-
Méthode d'authentification utilisée pour accéder à un appareil sur le protocole de connectivité donné.
Les valeurs prises en charge sont :
-
pki
-
password
-
connectivity.auth.credentials
-
Informations d'identification utilisées pour l'authentification.
connectivity.auth.credentials.user
-
Le nom d'utilisateur utilisé pour vous connecter à votre appareil.
connectivity.auth.credentials.privKeyPath
-
Le chemin complet vers la clé privée utilisée pour vous connecter à votre appareil.
Cette valeur s'applique uniquement si
connectivity.auth.method
est défini surpki
. devices.connectivity.auth.credentials.password
-
Le mot de passe utilisé pour vous connecter à votre appareil.
Cette valeur s'applique uniquement si
connectivity.auth.method
est défini surpassword
.
Note
Spécifiez privKeyPath
uniquement si method
est défini sur pki
.
Spécifiez password
uniquement si method
est défini sur password
.
Créez la suite d'exemples de tests
Le
dossier contient des exemples de fichiers de configuration, du code source et le SDK du client IDT que vous pouvez combiner dans une suite de tests à l'aide des scripts de génération fournis. L'arborescence de répertoires suivante indique l'emplacement de ces exemples de fichiers :<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
Pour créer la suite de tests, exécutez les commandes suivantes sur votre ordinateur hôte :
cd
<device-tester-extract-location>
/samples/python/build-scripts ./build.ps1
Cela crée l'exemple de suite de tests dans le IDTSampleSuitePython_1.0.0
dossier situé à l'intérieur du
dossier. Passez en revue les fichiers du <device-tester-extract-location>
/testsIDTSampleSuitePython_1.0.0
dossier pour comprendre comment l'exemple de suite de tests est structuré et pour voir divers exemples d'exécutables de scénarios de test et de fichiers JSON de configuration de test.
Note
L'exemple de suite de tests inclut le code source python. N'incluez pas d'informations sensibles dans le code de votre suite de tests.
Étape suivante : utilisez IDT pour exécuter l'exemple de suite de tests que vous avez créée.
Utiliser IDT pour exécuter l'exemple de suite de tests
Pour exécuter l'exemple de suite de tests, exécutez les commandes suivantes sur votre ordinateur hôte :
cd
<device-tester-extract-location>
/bin ./devicetester_[linux | mac | win_x86-64]
run-suite --suite-id IDTSampleSuitePython
IDT exécute la suite d'exemples de tests et diffuse les résultats sur la console. Lorsque le test est terminé, les informations suivantes s'affichent :
========== 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
Résolution des problèmes
Utilisez les informations suivantes pour résoudre les problèmes rencontrés lors de l'exécution du didacticiel.
Le scénario de test ne s'exécute pas correctement
Si le test échoue, IDT diffuse les journaux d'erreurs sur la console afin de vous aider à résoudre les problèmes liés à l'exécution du test. Assurez-vous de remplir toutes les conditions requises pour ce didacticiel.
Impossible de se connecter à l'appareil testé
Vérifiez les paramètres suivants :
-
Votre
device.json
fichier contient l'adresse IP, le port et les informations d'authentification corrects. -
Vous pouvez vous connecter à votre appareil via SSH depuis votre ordinateur hôte.