Sie sehen sich Hilfeinhalte der folgenden Version an:

AEM stellt ein Framework bereit, mit dem Sie das Testen Ihrer AEM-Benutzeroberfläche automatisieren können. 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. 

Hinweis:

Detaillierte Angaben zur API finden Sie in der Dokumentation zu Hobbes.js.

Die Struktur von Tests

Wenn Sie automatisierte Tests in AEM verwenden, sollten Sie die folgenden Begriffe kennen:

Aktion Eine Aktion ist eine bestimmte Aktivität auf einer Webseite, z. B. das Klicken auf einen Link oder eine Schaltfläche.
Testfall Ein Testfall ist eine bestimmte Situation, die aus mindestens einer Aktion besteht.
Test-Suite Eine Test-Suite ist eine Gruppe zusammengehöriger Testfälle, die gemeinsam einen bestimmten Testfall testen.

Ausführen von Tests

Anzeigen von Test-Suites

Öffnen Sie die Testen-Konsole, um die registrierten Test-Suites anzuzeigen. Das Test-Feld enthält eine Liste der Test-Suites samt ihrer Testfälle.

Navigieren Sie über Globale Navigation > Tools > Vorgänge > Testen zur Tools-Konsole.

chlimage_1

Wenn Sie die Konsole öffnen, werden die Test-Suites links aufgeführt, zusammen mit der Option, sie alle nacheinander auszuführen. Der Bereich rechts mit einem Hintergrund im Schachbrettmuster ist ein Platzhalter. Hier werden Seiteninhalte bei der Testausführung angezeigt.

chlimage_1

Ausführen einer einzelnen Test-Suite

Test-Suites können einzeln ausgeführt werden. Wenn Sie eine Test-Suite ausführen, ändert sich die Seite, während die Testfälle und ihre Aktion ausgeführt werden, und die Ergebnisse werden nach dem Abschluss des Tests angezeigt. Symbole zeigen die Ergebnisse an.

Das Häkchen-Symbol kennzeichnet einen erfolgreichen Test:

chlimage_1

Das X-Symbol steht für einen gescheiterten Test:

chlimage_1

So führen Sie eine Test-Suite aus:

  1. Klicken oder tippen Sie im Testfeld auf den Namen des Testfalls, den Sie ausführen möchten, um die Details zu den Aktionen anzuzeigen.

    chlimage_1
  2. Klicken oder tippen Sie auf die Schaltfläche Test ausführen.

    chlimage_1
  3. Der Platzhalter wird durch Seiteninhalte ersetzt, wenn der Test ausgeführt wird.

    chlimage_1
  4. Um die Ergebnisse des Testfalls anzuzeigen, tippen oder klicken Sie auf die Beschreibung, um das Feld Ergebnis zu öffnen. Wenn Sie im Feld Ergebnis auf den Namen des Testfalls tippen oder klicken, werden alle Details angezeigt.

    chlimage_1

Ausführen mehrerer Tests

Test-Suites werden nacheinander in der Reihenfolge ausgeführt, in der sie in der Konsole erscheinen. Sie können einen Test aufschlüsseln, um detaillierte Ergebnisse einzusehen.

chlimage_1
  1. Tippen oder klicken 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.

    chlimage_1
  2. Um die Ergebnisse jedes Testfalls anzuzeigen, tippen oder klicken Sie auf den Titel des Testfalls. Wenn Sie im Feld Ergebnis auf den Namen des Testfalls tippen oder klicken, werden alle Details angezeigt.

    chlimage_1

Erstellen und Verwenden einer einfachen 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 Webseite anpassen.

Vollständige Informationen zum Erstellen eigener Test-Suites finden Sie in der Dokumentation zur Hobbes.js-API.

  1. Öffnen Sie CRXDE Lite. (http://localhost:4502/crx/de)

  2. Klicken Sie mit der rechten Maustaste auf den Ordner /etc/clientlibs und klicken Sie auf Erstellen > Ordner erstellen. Geben Sie als Namen myTests ein und klicken Sie auf OK.

  3. Klicken Sie mit der rechten Maustaste auf den Ordner /etc/clientlibs/meineTests und klicken Sie auf Erstellen > Knoten erstellen. Geben Sie die folgenden Eigenschaftswerte ein und klicken Sie dann auf OK:

    • Name: myFirstTest
    • Typ: cq:ClientLibraryFolder
  4. Fügen Sie dem Knoten „myFirstTest“ die folgenden Eigenschaften hinzu:

    Name Typ Wert
    categories String[] granite.testing.hobbes.tests
    dependencies String[] granite.testing.hobbes.testrunner

    Hinweis:

    Nur in AEM Forms

    Um adaptive Formulare zu testen, fügen Sie die folgenden Werte den Kategorien (categories) und Abhängigkeiten (dependencies) hinzu. Beispiel:

    categories: granite.testing.hobbes.tests, granite.testing.hobbes.af.commons

    dependencies: granite.testing.hobbes.testrunner, granite.testing.hobbes.af

  5. Klicken Sie auf Alle speichern.

  6. Klicken Sie mit der rechten Maustaste auf den Knoten myFirstTest und klicken Sie auf Erstellen > Datei erstellen. Nennen Sie die Datei js.txt und klicken Sie auf OK.

  7. Geben Sie in der Datei js.txt den folgenden Text ein:

    #base=.
    myTestSuite.js
  8. Klicken Sie auf Alle speichern und schließen Sie dann die Datei js.txt.

  9. Klicken Sie mit der rechten Maustaste auf den Knoten myFirstTest und klicken Sie auf Erstellen > Datei erstellen. Nennen Sie die Datei myTestSuite.js und klicken Sie auf OK.

  10. Kopieren Sie den folgenden Code in die Datei myTestSuite.js und speichern Sie die Datei anschließend:

    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")
    );
  11. Navigieren Sie zur Testkonsole, um die Test-Suite zu testen.

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie