Verwenden automatisierter Tests mit adaptiven Formularen in AEM using-automated-tests-with-aem-adaptive-forms
Automatisierte Tests von adaptiven Formularen mit Calvin SDK
Calvin SDK ist eine Dienstprogramm-API für Entwickler von adaptiven Formularen zum Testen von adaptiven Formularen. Calvin SDK wird auf dem Hobbes.js Testrahmen erstellt. Calvin SDK ist ab AEM Forms 6.3 verfügbar.
In diesem Tutorial erstellen Sie Folgendes:
- Testsuite
- Die Testsuite enthält einen oder mehrere Testfälle.
- Testfälle enthalten eine oder mehrere Aktionen.
Erste Schritte getting-started
Laden Sie die Assets mit Package Manager herunter und installieren Sie sie. Das Paket enthält Beispielskripte und mehrere adaptive Formulare. Diese adaptiven Formulare wurden mit AEM Forms Version 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 adaptiven Formularen verfügbar sind. Die allgemeinen Schritte zum Testen von adaptiven Formularen in AEM sind:
- Navigieren Sie zu dem Formular, das getestet werden soll.
- Legen Sie den Feldwert fest.
- Senden Sie das adaptive Formular.
- Prüfen Sie auf Fehlermeldungen.
Die Beispielskripte im Paket zeigen alle oben genannten Aktionen.
Lassen Sie uns den Code von mortgageForm.js
untersuchen.
var mortgageFormTS = new hobs.TestSuite("Mortgage Form Test", {
path: '/etc/clientlibs/testingAFUsingCalvinSDK/mortgageForm.js',
register: true
})
Der obige Code erstellt eine neue Testsuite.
- Der Name der Testsuite lautet in diesem Fall „
Mortgage Form Test
“. - Angegeben ist der absolute Pfad in AEM zur JS-Datei, die die Testsuite enthält.
- Wenn der Registrierungsparameter auf „
true
“ festgelegt ist, steht die Testsuite in der Testbenutzeroberfläche zur Verfügung.
.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()
})
Testfälle können der Testsuite hinzugefügt werden, um für ein adaptives Formular ausgeführt zu werden.
- Verwenden Sie zum Hinzufügen eines Testfalls zur Testsuite die Methode
addTestCase
des Testsuite-Objekts. - Die Methode
addTestCase
verwendet ein Testfallobjekt als Parameter. - Verwenden Sie zum Erstellen von Testfällen 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 Aktionen zu Ihrem Testfall hinzufügen.
- Aktionen einschließlich
navigateTo
undasserts.isTrue
können als Aktion zum Testfall hinzugefügt werden.
Ausführen der automatisierten Tests running-the-automated-tests
Öffnen Sie die Testsuite. Erweitern Sie die Testsuite und führen Sie die Tests aus. Wenn alles erfolgreich ausgeführt wird, wird die folgende Ausgabe angezeigt.
Ausprobieren der Beispieltestsuiten try-out-the-sample-test-suites
Als Teil des Beispielpakets gibt es drei weitere Testsuiten. Sie können sie ausprobieren, indem Sie die entsprechenden Dateien wie unten gezeigt in die js.txt-Datei der Client-Bibliothek einfügen:
#base=.
scriptingTest.js
validationTest.js
prefillTest.js
mortgageForm.js