Verwenden automatisierter Tests mit AEM adaptiven Forms

Automatisierte Tests von Adaptive Forms mit Calvin SDK

Calvin SDK ist eine Dienstprogramm-API für Entwickler von adaptiven Formularen zum Testen von adaptiven Formularen. Calvin SDK basiert auf dem Hobbes.js-Test-Framework. Calvin SDK ist ab AEM Forms 6.3 verfügbar.

In diesem Tutorial erstellen Sie Folgendes:

  • Testsuite
  • Die Test Suite enthält einen oder mehrere Testfälle.
  • Testfälle enthalten eine oder mehrere Aktionen.

Erste Schritte

Herunterladen und Installieren der Assets mit Package Manager Das Paket enthält Beispielskripte und mehrere adaptive Forms. Diese adaptive Forms werden mit AEM Forms 6.3 erstellt. Es wird empfohlen, neue Formulare speziell für Ihre Version von AEM Forms zu erstellen, wenn Sie dies auf AEM Forms 6.4 oder höher testen. Die Beispielskripte zeigen verschiedene Calvin SDK-APIs, die zum Testen von Adaptive Forms verfügbar sind. Die allgemeinen Schritte zum Testen AEM Adaptive Forms sind:

  • Navigieren Sie zu dem Formular, das getestet werden soll
  • Feldwert festlegen
  • Senden des adaptiven Formulars
  • Auf Fehlermeldungen prüfen

Die Beispielskripts im Paket zeigen alle oben genannten Aktionen.
Sehen wir uns den Code von mortgageForm.js an.

var mortgageFormTS = new hobs.TestSuite("Mortgage Form Test", {
        path: '/etc/clientlibs/testingAFUsingCalvinSDK/mortgageForm.js',
        register: true
})

Der obige Code erstellt eine neue Test Suite.

  • Der Name der TestSuite lautet in diesem Fall " Mortgage Form Test ".
  • Angegeben ist der absolute Pfad in AEM zur JS-Datei, die die Test-Suite enthält.
  • Wenn der Registrierungsparameter auf " true"gesetzt ist, wird die Test Suite in der Test-Benutzeroberfläche verfügbar gemacht.
.addTestCase(new hobs.TestCase("Calculate amount to borrow")
        // navigate to the mortgage form  which is to be tested
        .navigateTo("/content/forms/af/cal/mortgageform.html?wcmmode=disabled")
  .asserts.isTrue(function () {
            return calvin.isFormLoaded()
        })
HINWEIS

Wenn Sie diese Funktion in AEM Forms 6.4 oder höher testen, erstellen Sie ein neues adaptives Formular und verwenden Sie es zum Testen. Es wird nicht empfohlen, das mit dem Paket bereitgestellte adaptive Formular zu verwenden.

Testfälle können der Test-Suite hinzugefügt werden, die für ein adaptives Formular ausgeführt werden soll.

  • Verwenden Sie zum Hinzufügen eines Testfalls zur Testsuite die Methode addTestCase des TestSuite-Objekts.
  • Die addTestCase-Methode akzeptiert ein TestCase-Objekt als Parameter.
  • Verwenden Sie zum Erstellen von TestCase die Methode hobs.TestCase(..) .
  • Hinweis: Der erste Parameter ist der Name des Testfalls, der in der Benutzeroberfläche angezeigt wird.
  • Nachdem Sie einen Testfall erstellt haben, können Sie dann Aktionen zu Ihrem Testfall hinzufügen.
  • Aktionen wie navigateTo, asserts.isTrue können dem Testfall als Aktionen hinzugefügt werden.

Ausführen automatisierter Tests

🔗OpenthetestsuiteErweitern Sie die Test Suite und führen Sie die Tests aus. Wenn alles erfolgreich ausgeführt wird, wird die folgende Ausgabe angezeigt.

calvinsdk

Probieren Sie die Beispiel-Test-Suites aus.

Als Teil des Beispielpakets gibt es drei weitere Testsuiten. Sie können sie ausprobieren, indem Sie die entsprechenden Dateien wie unten gezeigt in die Datei js.txt der Client-Bibliothek einfügen:

#base=.

scriptingTest.js
validationTest.js
prefillTest.js
mortgageForm.js

Auf dieser Seite