Utiliser le framework AWS IoT Greengrass de test - AWS IoT Greengrass

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.

Utiliser le framework AWS IoT Greengrass de test

Greengrass Testing Framework (GTF) est un ensemble de composants qui soutiennent l' end-to-endautomatisation du point de vue du client. GTFutilise Cucumber comme pilote de fonctionnalité. AWS IoT Greengrass utilise les mêmes éléments de base pour qualifier les modifications logicielles sur différents appareils. Pour plus d'informations, consultez Greengrass Testing Framework sur Github.

GTFest implémenté à l'aide de Cucumber, un outil utilisé pour exécuter des tests automatisés, afin d'encourager un développement des composants piloté par le comportement (BDD). Dans Cucumber, les fonctionnalités de ce système sont décrites dans un type de fichier spécial appeléfeature. Chaque fonctionnalité est décrite dans un format lisible par l'homme appelé scénarios, qui sont des spécifications pouvant être converties en tests automatisés. Chaque scénario est décrit comme une série d'étapes qui définissent les interactions et les résultats de ce système testé à l'aide d'un langage spécifique au domaine appelé Gherkin. Une étape Gherkin est liée au code de programmation à l'aide d'une méthode appelée définition d'étape qui relie la spécification au flux de test. Les définitions d'étapes GTF sont implémentées avec Java.

Comment ça marche

AWS IoT Greengrass le distribue GTF en tant JAR que solution autonome composée de plusieurs modules Java. GTFPour end-to-end tester des composants, vous devez implémenter les tests dans un projet Java. L'ajout du test standable en JAR tant que dépendance dans votre projet Java vous permet d'utiliser les fonctionnalités existantes du GTF et de les étendre en écrivant vos propres cas de test personnalisés. Pour exécuter les scénarios de test personnalisés, vous pouvez créer votre projet Java et exécuter la cible JAR avec les options de configuration décrites dansOptions de configuration du Greengrass Testing Framework.

GTFautonome JAR

Greengrass utilise Cloudfront comme référentiel Maven pour héberger différentes versions du système autonome. GTF JAR Pour une liste complète des GTF versions, voir les GTFversions.

GTFstandalone JAR inclut les modules suivants. Il n'est pas limité à ces seuls modules. Vous pouvez sélectionner chacune de ces dépendances séparément dans votre projet ou les inclure toutes en même temps dans le JARfichier autonome de test.

  • aws-greengrass-testing-resources: Ce module fournit une abstraction permettant de gérer le cycle de vie d'une AWS ressource au cours d'un test. Vous pouvez l'utiliser pour définir vos AWS ressources personnalisées à l'aide de ResourceSpec l'abstraction GTF afin de vous occuper de la création et de la suppression de ces ressources pour vous.

  • aws-greengrass-testing-platform: Ce module fournit une abstraction au niveau de la plate-forme pour le périphérique testé pendant le cycle de vie du test. Il permet APIs d'interagir avec le système d'exploitation indépendamment de la plate-forme et peut être utilisé pour simuler les commandes exécutées dans le shell de l'appareil.

  • aws-greengrass-testing-components: Ce module comprend des exemples de composants utilisés pour tester les fonctionnalités principales de Greengrass, IPC telles que les déploiements et d'autres fonctionnalités.

  • aws-greengrass-testing-features: Ce module comprend des étapes communes réutilisables et leurs définitions qui sont utilisées pour les tests dans l'environnement Greengrass.

Journal des modifications

Le tableau suivant décrit les modifications apportées à chaque version duGTF. Pour plus d'informations, consultez la page GTF des versions sur GitHub.

Version

Modifications

1.2.0
Nouvelles fonctionnalités
  • Ajoute des étapes liées au réseau pour configurer MQTT et à la connectivité au réseau Internet pendant les tests.

  • Ajoute des étapes métriques au système pour surveiller le périphérique RAM et CPU son utilisation.

Corrections de bogues et améliorations
  • L'étape de déploiement CLI local de Greengrass recommence jusqu'à ce qu'elle aboutisse.

  • Les tests arrêtent gracieusement le noyau de Greengrass au lieu de le tuer.

  • Ajoute une amélioration qui permet AWS IoT d'GTFinterroger le point de terminaison des informations d'identification jusqu'à ce que les informations d'identification soient récupérables pour l'objet et l'alias de rôle.

  • Corrige les artefacts et les répertoires de recettes manquants. Cette version corrige également les versions de composants manquantes.

  • Résout un problème d'GTFéchec lors du nettoyage de l'image docker si l'image docker n'existe pas.

  • Ajoute un CURRENT mot-clé en tant que version du composant.

1.1.0

Nouvelles fonctionnalités
  • Ajoute la possibilité d'installer un composant personnalisé avec configuration. Cela nécessite une recette pour le composant personnalisé.

  • Permet de mettre à jour un déploiement local avec une configuration personnalisée.

Corrections de bogues et améliorations
  • Résout le problème d'incohérence entre les GTF versions du contexte du journal.

1.0.0

Première version.