Testen der Benutzeroberfläche testing-your-ui
AEM bietet ein Framework für die Automatisierung von Tests für Ihre AEM-Benutzeroberfläche. Mit diesem Framework können Sie Tests der Benutzeroberfläche direkt in einem Webbrowser schreiben und ausführen. Das Framework umfasst eine JavaScript-API für das Erstellen von Tests.
Das AEM-Test-Framework nutzt Hobbes.js, eine Testbibliothek, die in JavaScript geschrieben wurde. Das Hobbes.js-Framework wurde für AEM-Tests als Teil des Entwicklungsprozesses entwickelt. Das Framework steht jetzt zur allgemeinen Verwendung zum Testen Ihrer AEM-Anwendungen zur Verfügung.
Struktur von Tests structure-of-tests
Bei der Verwendung automatisierter Tests in AEM ist es wichtig, die folgenden Begriffe zu verstehen:
Ausführen von Tests executing-tests
Anzeigen von Test-Suites viewing-test-suites
Öffnen Sie die Testkonsole, um die registrierten Test-Suites anzuzeigen. Das Testfeld enthält eine Liste von Test-Suites und deren Testfälle.
Navigieren Sie über Globale Navigation > Tools > Vorgänge > Tests zur Tools-Konsole.
Beim Öffnen der Konsole werden die Test-Suites auf der linken Seite aufgeführt, zusammen mit der Option, sie alle nacheinander auszuführen. Der rechts angezeigte Bereich mit einem gecheckten Hintergrund ist ein Platzhalter für die Anzeige des Seiteninhalts während der Testausführung.
Ausführen einer einzelnen Test-Suite running-a-single-test-suite
Testsuiten können einzeln ausgeführt werden. Wenn Sie eine Test-Suite ausführen, ändert sich die Seite, während die Testfälle und ihre Aktionen ausgeführt werden. Die Ergebnisse werden nach Abschluss des Tests angezeigt. Die Ergebnisse werden durch Symbole gekennzeichnet.
Das Häkchen-Symbol kennzeichnet einen erfolgreichen Test:
Eine X-Symbol zeigt einen fehlgeschlagenen Test an:
So führen Sie eine Test-Suite aus:
-
Klicken Sie im Testfeld auf den Namen des Testfalls, den Sie ausführen möchten, um die Details der Aktionen zu erweitern.
-
Klicken Sie auf Test ausführen.
-
Der Platzhalter wird durch Seiteninhalte ersetzt, wenn der Test ausgeführt wird.
-
Um die Ergebnisse des Testfalls anzuzeigen, tippen oder klicken Sie auf die Beschreibung, um das Bedienfeld Ergebnis zu öffnen. Wenn Sie im Bedienfeld Ergebnis auf den Namen des Testfalls tippen oder klicken, werden alle Details angezeigt.
Ausführen mehrerer Tests running-multiple-tests
Test-Suites werden nacheinander in der Reihenfolge ausgeführt, in der sie in der Konsole angezeigt werden. Sie können einen Drilldown durchführen, um die detaillierten Ergebnisse anzuzeigen.
-
Tippen Sie im Testfeld auf die Schaltfläche Alle Tests ausführen oder auf die Schaltfläche Tests ausführen unter dem Titel der Test-Suite, die Sie ausführen möchten.
-
Um die Ergebnisse jedes Testfalls anzuzeigen, tippen oder klicken Sie auf den Titel des Testfalls. Wenn Sie im Bedienfeld Ergebnis auf den Namen des Tests klicken, werden alle Details angezeigt.
Erstellen und Verwenden einer einfachen Test-Suite creating-and-using-a-simple-test-suite
Die folgenden Schritte erläutern die Erstellung und Ausführung einer Test-Suite mit We.Retail-Inhalten. Sie können den Test jedoch auch einfach für eine andere Web-Seite anpassen.
Vollständige Informationen zum Erstellen eigener Test-Suites finden Sie in der Dokumentation zur Hobbes.js-API.
-
Öffnen Sie CRXDE Lite. (https://localhost:4502/crx/de)
-
Klicken Sie mit der rechten Maustaste auf den Ordner
/etc/clientlibs
und klicken Sie auf Erstellen > Ordner erstellen. Geben Sie als NamenmyTests
ein und klicken Sie auf OK. -
Klicken Sie mit der rechten Maustaste auf den Ordner
/etc/clientlibs/myTests
und klicken Sie auf Erstellen > Knoten erstellen. Geben Sie die folgenden Eigenschaftswerte ein und klicken Sie dann auf OK:- Name:
myFirstTest
- Typ:
cq:ClientLibraryFolder
- Name:
-
Fügen Sie dem Knoten „myFirstTest“ die folgenden Eigenschaften hinzu:
table 0-row-3 1-row-3 2-row-3 Name Typ Wert categories
Zeichenfolge[] granite.testing.hobbes.tests
dependencies
Zeichenfolge[] granite.testing.hobbes.testrunner
note note NOTE Nur AEM Forms Fügen Sie den Kategorien und Abhängigkeiten die folgenden Werte hinzu, um adaptive Formulare zu testen. Beispiel: categories:: granite.testing.hobbes.tests, granite.testing.hobbes.af.commons
dependencies: granite.testing.hobbes.testrunner, granite.testing.hobbes.af
-
Klicken Sie auf Alle speichern.
-
Klicken Sie mit der rechten Maustaste auf den Knoten
myFirstTest
und klicken Sie auf Erstellen > Datei erstellen. Nennen Sie die Dateijs.txt
und klicken Sie auf OK. -
Geben Sie in der Datei
js.txt
den folgenden Text ein:code language-none #base=. myTestSuite.js
-
Klicken Sie auf Alle speichern und schließen Sie dann die Datei
js.txt
-
Klicken Sie mit der rechten Maustaste auf den Knoten
myFirstTest
und klicken Sie auf Erstellen > Datei erstellen. Nennen Sie die DateimyTestSuite.js
und klicken Sie auf OK. -
Kopieren Sie den folgenden Code in die Datei
myTestSuite.js
und speichern Sie die Datei anschließend: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") );
-
Navigieren Sie zur Testkonsole, um die Test-Suite zu testen.