Kontinuierliches API-Testing
Der CLI-Test-Runner von Talend Cloud API Tester lässt sich problemlos mit den meisten CI-Lösungen integrieren. Dazu müssen lediglich das neueste Java-JDK und Maven auf Ihrem CI-Gerät installiert sein.
Die folgenden Lösungen sind mit Talend Cloud API Tester kompatibel:
- Jenkins
- Azure Pipelines
- AWS CodeBuild und CodePipeline
- Travis CI
- CircleCI
- Team Foundation Server
- Gitlab CI/CD
Auch andere CI/CD-Lösungen sind unter Umständen kompatibel. Wenn Sie über eine andere funktionierende Lösung verfügen, nehmen Sie bitte Kontakt zu uns auf, damit wir diese Seite aktualisieren können.
CI-Workflow
Ihre API-Tests sollten gemäß dem folgenden Workflow ablaufen:
Generieren Sie Ihre API ausgehend von den Quellen, führen Sie Einheitstests aus, implementieren Sie die API und führen Sie schließlich Integrationstests für die API mithilfe von Talend Cloud API Tester aus.
In technischer Hinsicht stehen Ihnen dazu zwei Hauptverfahren zur Auswahl (siehe nachstehende Beschreibung). Weitere Informationen zur Konfiguration Ihrer CI-Generierungen finden Sie unter Talend Cloud API Tester Examples.
Basis-Workflow: Testen Sie Ihren Haupt-Branch einmal pro Tag.
Wenn Sie Ihre API in einer statischen Umgebung testen möchten, können Sie den Test auf Anforderung ausführen oder eine nächtliche Ausführung des Jobs planen. Diese Lösung lässt sich einfach implementieren und erfüllt ihren Zweck. Beachten Sie dabei jedoch Folgendes:
- Es kann jeweils nur ein Test ausgeführt werden.
- Die Daten in der API werden bei der Ausführung eines Tests ggf. „verschmutzt“ und müssen bereinigt werden, bevor ein anderer Test ausgeführt werden kann. Andernfalls werden die Tests nicht unter denselben Bedingungen ausgeführt.
- Jeder Benutzer, der über Zugriff auf die betreffende Umgebung verfügt, kann die API während des laufenden Tests anfordern. Das kann zu einem Scheitern des Tests führen, der sich nur schwer debuggen lässt.
Bei Tests in einer Staging-Umgebung können Sie eine CRON-Task erstellen, die einmal pro Nacht ausgeführt wird und dabei folgende Aufgaben übernimmt:
- Abrufen des API-Codes und der Testdatei aus GitHub.
- Generieren und Testen des API-Codes.
- Implementieren des Codes in Ihrer Umgebung.
- Ausführen der API-Tests für den Code mithilfe des Maven-Plug-Ins.
- Abrufen der Testberichte.
Sobald der Job verfügbar ist, sollte er ebenfalls auf Anforderung ausgeführt werden können.
Erweiterter Workflow: Prüfen der API bei jedem Commit
Eine erweiterte Lösung besteht in der Implementierung der API in einem Container für jede Jobausführung. Das ermöglicht Ihnen Folgendes:
- Gleichzeitiges Testen mehrerer Branches.
- Arbeiten in einer in Bereiche untergliederten Umgebung.
- Testen jedes Commits.
Wenn Sie Ihre API in Containern testen, können Sie eine Task erstellen, die bei jeder Aktualisierung der Quellen ausgeführt wird und dabei folgende Aufgaben übernimmt:
- Generieren des API-Codes und Ausführen von Einheitstests für den Code.
- Implementieren des Codes in einem Container.
- Ausführen der API-Tests für den Code mithilfe des Talend Cloud API Tester-Plug-Ins für Maven.
- Abrufen der Testberichte.