Tester votre IU testing-your-ui
AEM fournit un framework pour l’automatisation des tests pour votre IU AEM. Grâce au framework, vous développez et exécutez des tests d’IU directement dans un navigateur web. Ce framework fournit une API Javascript dédiée à la création de tests.
Le framework de test AEM utilise Hobbes.js, une bibliothèque de tests développée en JavaScript. Le framework Hobbes.js a été développé pour tester AEM dans le cadre du processus de développement. Le framework est aujourd’hui disponible au public pour tester les applications AEM.
Structure des tests structure-of-tests
Lors de l’utilisation de tests automatisés dans AEM, il est important de comprendre les termes suivants :
Exécution de tests executing-tests
Affichage de suites de tests viewing-test-suites
Ouvrez la console de test pour voir les suites de tests enregistrées. Le panneau Tests contient une liste des suites de tests et de leurs cas de test.
Accédez à la console Outils via Navigation globale > Outils > Opérations > Test.
Lors de l’ouverture de la console, les suites de tests sont répertoriées à gauche avec une option permettant de les exécuter en séquence. L’espace à droite affiché avec un arrière-plan en damier est un espace réservé permettant d’afficher le contenu de la page pendant l’exécution des tests.
Exécution d’une seule suite de tests running-a-single-test-suite
Les suites de tests peuvent être exécutées séparément. Lorsque vous lancez une suite de tests, la page change au fur et à mesure que les cas de tests et leurs actions sont exécutés et une fois que les résultats apparaissent à la fin du test. Les icônes indiquent les résultats.
Une icône en forme de coche indique un test réussi :
Une icône « X » indique l’échec d’un test :
Pour exécuter une suite de tests, procédez comme suit :
-
Dans le panneau Tests, cliquez sur le nom du cas de test que vous souhaitez exécuter pour développer les détails des actions.
-
Cliquez sur Exécuter le test.
-
L’espace réservé est remplacé par le contenu de la page lors de l’exécution du test.
-
Passez en revue les résultats du cas de test en cliquant ou en appuyant sur la description pour ouvrir le panneau Résultat. Appuyez ou cliquez sur le nom de votre cas de test dans le panneau Résultat pour afficher tous les détails.
Exécution de plusieurs tests running-multiple-tests
Les suites de tests s’exécutent séquentiellement dans l’ordre dans lequel elles sont visibles dans la console. Vous pouvez analyser en profondeur un test pour afficher les résultats détaillés.
-
Dans le panneau Tests, cliquez sur le bouton Exécuter tous les tests ou sur le bouton Exécuter les tests sous le titre de la suite de tests que vous souhaitez exécuter.
-
Pour afficher les résultats de chaque cas de test, cliquez sur le titre du cas de test. Cliquez sur le nom de votre test dans le panneau Résultat pour afficher tous les détails.
Création et utilisation d’une suite de tests simple creating-and-using-a-simple-test-suite
La procédure suivante vous guide tout au long de la création et de l’exécution d’une suite de tests sur le contenu We.Retail. Toutefois, vous pouvez facilement modifier le test pour utiliser une autre page web.
Pour plus d’informations sur la création de vos propres suites de tests, reportez-vous à la documentation de l’API Hobbes.js.
-
Ouvrez CRXDE Lite. (https://localhost:4502/crx/de)
-
Cliquez avec le bouton droit de la souris sur le dossier
/etc/clientlibs
, puis cliquez sur Créer > Créer un dossier. EntrezmyTests
comme nom et cliquez sur OK. -
Cliquez avec le bouton droit sur le dossier
/etc/clientlibs/myTests
et cliquez sur Créer > Créer un nœud. Entrez les valeurs de propriété suivantes, puis cliquez sur OK :- Nom :
myFirstTest
- Type :
cq:ClientLibraryFolder
- Nom :
-
Ajoutez les propriétés suivantes au nœud myFirstTest :
table 0-row-3 1-row-3 2-row-3 Nom Type Valeur categories
Chaîne[] granite.testing.hobbes.tests
dependencies
Chaîne[] granite.testing.hobbes.testrunner
note note NOTE AEM Forms uniquement Pour tester des formulaires adaptatifs, ajoutez les valeurs suivantes aux catégories et aux dépendances. Par exemple : categories : granite.testing.hobbes.tests, granite.testing.hobbes.af.commons
dependencies : granite.testing.hobbes.testrunner, granite.testing.hobbes.af
-
Cliquez sur Enregistrer tout.
-
Cliquez avec le bouton droit sur le nœud
myFirstTest
et cliquez sur Créer > Créer un fichier. Nommez le fichierjs.txt
et cliquez sur OK. -
Dans le fichier
js.txt
, entrez le texte suivant :code language-none #base=. myTestSuite.js
-
Cliquez sur Enregistrer tout et fermez le fichier
js.txt
-
Cliquez avec le bouton droit sur le nœud
myFirstTest
et cliquez sur Créer > Créer un fichier. Nommez le fichiermyTestSuite.js
et cliquez sur OK. -
Copiez le code suivant dans le fichier
myTestSuite.js
, puis enregistrez le fichier :code language-none new hobs.TestSuite("Experience Content Test Suite", {path:"/etc/clientlibs/myTests/myFirstTest/myTestSuite.js"}) .addTestCase(new hobs.TestCase("Navigate to Experience Content") .navigateTo("/content/we-retail/us/en/experience/arctic-surfing-in-lofoten.html") ) .addTestCase(new hobs.TestCase("Hover Over Topnav") .mouseover("li.visible-xs") ) .addTestCase(new hobs.TestCase("Click Topnav Link") .click("li.active a") );
-
Accédez à la console Tests pour essayer votre suite de tests.