AEM biedt een raamwerk voor het automatiseren van tests voor uw AEM UI. Met behulp van het framework schrijft en voert u tests voor de gebruikersinterface rechtstreeks in een webbrowser uit. Het framework biedt een javascript API voor het maken van tests.
Het AEM testframework gebruikt Hobbes.js, een testbibliotheek die in Javascript is geschreven. Het Hobbes.js-framework is ontwikkeld voor het testen van AEM als onderdeel van het ontwikkelingsproces. Het framework is nu beschikbaar voor gebruik door het publiek om uw AEM toepassingen te testen.
Raadpleeg de documentatie voor volledige informatie over de API.
Wanneer het gebruiken van geautomatiseerde tests binnen AEM, zijn de volgende termijnen belangrijk om te begrijpen:
Actie | Een Actie is een specifieke activiteit op een Web-pagina zoals het klikken van een verbinding of een knoop. |
Testcase | Een testcase is een specifieke situatie die uit één of meerdere Acties kan worden samengesteld. |
Testsuite | Een Testsuite is een groep verwante Testgevallen die samen een specifiek gebruikscase testen. |
Open de testconsole om de geregistreerde testsuites te zien. Het deelvenster Tests bevat een lijst met testreeksen en de bijbehorende testdoosjes.
Navigeer naar de console van Hulpmiddelen via Algemene Navigatie -> Hulpmiddelen > Verrichtingen -> Testen.
Wanneer het openen van de console, zijn de Suites van de Test vermeld aan de linkerzijde samen met een optie om alle hen opeenvolgend in werking te stellen. De ruimte aan het recht die met een gevlokte achtergrond wordt getoond, is placeholder voor het tonen van paginainhoud aangezien de tests in werking stellen.
Testsets kunnen afzonderlijk worden uitgevoerd. Wanneer u een testsuite uitvoert, verandert de pagina terwijl de testcase wordt uitgevoerd en de bijbehorende handelingen worden uitgevoerd. De resultaten verschijnen na afloop van de test. Pictogrammen geven de resultaten aan.
Een vinkje geeft aan dat een test is geslaagd:
Een X-pictogram geeft aan dat een test is mislukt:
Een testsuite uitvoeren:
Klik of tik in het deelvenster Tests op de naam van de testcase die u wilt uitvoeren om de details van de handelingen uit te vouwen.
Klik of tik Test knoop van de Looppas.
De tijdelijke aanduiding wordt tijdens de test vervangen door pagina-inhoud.
Bekijk de resultaten van de testcase door op de beschrijving te tikken of te klikken om het deelvenster Resultaat te openen. Tik of klik op de naam van uw testcase in het paneel Resultaat om alle details weer te geven.
Testsets worden opeenvolgend uitgevoerd in de volgorde waarin ze in de console worden weergegeven. U kunt naar beneden in een test boren om de gedetailleerde resultaten te zien.
Tik op of klik op Alle tests uitvoeren of Tests uitvoeren onder de titel van de testsuite die u wilt uitvoeren.
Tik of klik op de titel van de testcase om de resultaten van elke testcase weer te geven. Tik of klik op de naam van de test in het venster Resultaat om alle details weer te geven.
De volgende procedure begeleidt u door de verwezenlijking en de uitvoering van een Reeks van de Test gebruikend Wij.Retail inhoud, maar u kunt de test gemakkelijk wijzigen om een verschillende Web-pagina te gebruiken.
Zie de documentatie van de API van Hobbes.js voor meer informatie over het maken van uw eigen testsuites.
Open CRXDE Lite. (http://localhost:4502/crx/de)
Klik met de rechtermuisknop op de map /etc/clientlibs
en klik op Maken > Map maken. Typ myTests
voor de naam en klik OK.
Klik met de rechtermuisknop op de map /etc/clientlibs/myTests
en klik op Maken > Node maken. Gebruik de volgende eigenschapswaarden en klik vervolgens op OK:
myFirstTest
cq:ClientLibraryFolder
Voeg de volgende eigenschappen toe aan het myFirstTest-knooppunt:
Naam | Type | Waarde |
---|---|---|
categories |
String[] |
granite.testing.hobbes.tests |
dependencies |
String[] |
granite.testing.hobbes.testrunner |
Alleen AEM Forms
Als u adaptieve formulieren wilt testen, voegt u de volgende waarden toe aan de categorieën en afhankelijkheden. Bijvoorbeeld:
categorieën: granite.testing.hobbes.tests, granite.testing.hobbes.af.commons
afhankelijkheden: granite.testing.hobbes.testrunner, granite.testing.hobbes.af
Klik Alles opslaan.
Klik met de rechtermuisknop op het knooppunt myFirstTest
en klik op Maken > Bestand maken. Geef het bestand een naam js.txt
en klik op OK.
Voer in het bestand js.txt
de volgende tekst in:
#base=.
myTestSuite.js
Klik Alles opslaan en sluit vervolgens het js.txt
-bestand.
Klik met de rechtermuisknop op het knooppunt myFirstTest
en klik op Maken > Bestand maken. Geef het bestand een naam myTestSuite.js
en klik op OK.
Kopieer de volgende code naar het myTestSuite.js
-bestand en sla het bestand op:
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")
);
Navigeer naar de Testing-console om uw testsuite uit te proberen.