Apidog Automatisierte Tests: Automatisch Auslösen Nach Code-Einreichung

Oliver Kingsley

Oliver Kingsley

22 July 2025

Apidog Automatisierte Tests: Automatisch Auslösen Nach Code-Einreichung

Apidog für Unternehmen

On-Premises Bereitstellung

SSO & RBAC

SOC 2 konform

Apidog Enterprise entdecken

In der kollaborativen Softwareentwicklung kann das manuelle Ausführen von API-Tests nach jedem Code-Commit schnell mühsam werden. Wäre es nicht besser, wenn diese Tests automatisch ausgeführt würden, sobald neuer Code gepusht wird?

Die gute Nachricht ist, dass dies absolut möglich ist. Die meisten Teams verwenden bereits CI/CD-Plattformen, um Code-Builds und -Bereitstellungen zu handhaben, und diese Plattformen sind darauf ausgelegt, auf Git-Commit-Ereignisse zu hören. Wenn Sie Code pushen, führen sie automatisch vordefinierte Aufgaben wie Kompilieren, Packen oder Bereitstellen aus.

Das Ausführen automatisierter API-Tests ist nicht anders. Apidog bietet ein CLI-Tool, mit dem Sie automatisierte Tests mit einem einzigen Befehl auslösen können. Indem Sie diesen Befehl zu Ihrer CI/CD-Pipeline hinzufügen, können Sie sicherstellen, dass Tests nach jeder Code-Einreichung automatisch ausgeführt werden.

Der Einrichtungsprozess ist unkompliziert. Das Wichtigste ist, zu verstehen, wie der Auslösemechanismus funktioniert, und dann den richtigen Integrationsansatz basierend auf der von Ihrem Team verwendeten Plattform zu wählen.

Wie funktionieren automatische Testauslöser? (Die Prinzipien)

Der Kern des gesamten Prozesses ist "Ereignis-Listening + Befehlsausführung".

Wenn Sie Code in ein Git-Repository pushen, hört die CI/CD-Plattform auf dieses Git-Ereignis und führt gemäß Ihrer voreingestellten Konfiguration (wie Pipeline-Skripte oder Konfigurationsdateien) automatisch den Apidog-Testbefehl aus.

Dieses Prinzip kann wie folgt dargestellt werden:

Prinzipien des automatischen Tests in Apidog

Es gibt hauptsächlich zwei Möglichkeiten für CI/CD-Plattformen, auf Git-Ereignisse zu hören:

Die erste ist der plattforminterne Ereignismechanismus. Zum Beispiel können GitHub Actions direkt in der Konfigurationsdatei angegeben werden: on: [push, pull_request]. Wenn Sie Code pushen oder einen PR erstellen, hört die Plattform automatisch auf diese Git-Ereignisse und startet die Tests.

Integrierter Ereignismechanismus in GitHub

Die zweite ist per Webhook, geeignet für Szenarien wie Jenkins, wo plattformübergreifende Kommunikation benötigt wird. Sie müssen eine Trigger-URL manuell konfigurieren.

Unabhängig von der Methode ist der letzte Schritt immer derselbe: Führen Sie den Befehl apidog run aus, um den automatisierten Test zu starten.

Integrationslösungen für beliebte Plattformen

Wenn Sie Code-Hosting-Plattformen wie GitHub oder GitLab verwenden, ist das Auslösen von Tests besonders einfach. Diese Plattformen verfügen über integrierte CI/CD-Dienste (wie GitHub Actions, GitLab CI), die direkt auf Git-Ereignisse hören und Aufgaben ausführen können. Sie können sich an diesen Dokumenten orientieren, um schnell loszulegen:

Viele Teams haben jedoch komplexere Setups. Zum Beispiel wird Code auf GitHub oder GitLab gehostet, aber die CI/CD-Pipeline läuft auf Jenkins. In diesem Fall sind GitHub/GitLab und Jenkins zwei unabhängige Systeme – Ersteres kann Letzteres nicht direkt auslösen.

Für plattformübergreifende Szenarien sind Webhooks eine einfache und effektive Lösung. Ein Webhook funktioniert wie ein Rückrufmechanismus – wenn ein bestimmtes Ereignis (z. B. ein Git-Push) auf GitHub stattfindet, sendet es aktiv eine Anfrage an eine vordefinierte Webhook-URL, um ein externes System zu benachrichtigen. Durch das Anbieten eines Webhook-Endpunkts kann Jenkins diese Benachrichtigungen empfangen und Testaufgaben automatisch auslösen.

Betrachten wir eine spezifische Konfiguration: Code wird auf GitHub gehostet, aber die Test-Pipeline läuft auf Jenkins.

GitHub + Jenkins Integration für das Ausführen automatisierter Apidog-Tests

Wenn Ihr Team Code auf GitHub speichert, aber Jenkins zum Ausführen von Build-Aufgaben verwendet, können Sie es wie folgt einrichten:

Schritt 1: Jenkins konfigurieren und die Webhook-URL abrufen

Bereiten Sie zunächst die Testaufgabe in Jenkins vor. Befolgen Sie die Dokumentation Integration mit Jenkins, um ein Projekt zu erstellen, den Build-Befehl zu konfigurieren und sicherzustellen, dass der CLI-Befehl ordnungsgemäß ausgeführt werden kann.

Als Nächstes rufen Sie die Webhook-URL von Jenkins ab. Diese URL dient als Einstiegspunkt für externe Systeme, um Jenkins aufzurufen, und GitHub wird sie verwenden, um die Testaufgaben auszulösen.

Der einfachste Weg ist die Installation des Plugins "Generic Webhook Trigger". Suchen Sie es auf der Plugin-Verwaltungsseite von Jenkins und installieren Sie es, dann starten Sie Jenkins neu.

Gehen Sie dann zur Konfigurationsseite Ihres Projekts und aktivieren Sie dieses Plugin. Die Webhook-Adresse lautet:

http://<Ihre Jenkins-Serveradresse>/generic-webhook-trigger/invoke`

Aus Sicherheitsgründen wird empfohlen, ein benutzerdefiniertes Token festzulegen, sodass die Adresse wie folgt lautet:

http://<Ihre Jenkins-Serveradresse>/generic-webhook-trigger/invoke?token=<xxxxxx>

Sobald Sie diese URL haben, können Sie den Webhook in GitHub konfigurieren.

Schritt 2: GitHub-Webhook konfigurieren

Gehen Sie zu Ihrem "GitHub-Repository → Einstellungen → Webhooks", fügen Sie einen neuen Webhook hinzu, geben Sie die Adresse aus dem vorherigen Schritt ein, setzen Sie den Content-Type auf application/json, wählen Sie Push- oder andere Ereignisse aus, die den Test auslösen sollen, und speichern Sie die Konfiguration.

Nach der Konfiguration wird jeder Code-Push Jenkins automatisch dazu veranlassen, die Testaufgabe auszuführen. Sie können etwas Code pushen, um es zu testen, und die Jenkins-Build-Protokolle und Testergebnisse überprüfen.

Schritt 3: Den gesamten Prozess überprüfen

Wenn Sie Code auf GitHub pushen, sendet der konfigurierte Webhook eine Benachrichtigung an Jenkins. Jenkins empfängt die Anfrage und startet die Build-Aufgabe automatisch. Sie können die Testausführungsprotokolle in der "Konsole" des Jenkins-Projekts sehen und den endgültigen Testbericht einsehen.

Webhook-Konfiguration für andere Plattformen

Neben GitHub unterstützen auch andere Code-Hosting-Plattformen Webhooks, wie zum Beispiel:

Die Konfigurationsmethoden sind ähnlich. Der Schlüssel ist das Verständnis des Auslösemechanismus: Ein Git-Commit generiert ein Ereignis, das dann verwendet wird, um die CI/CD-Plattform per Ereignis-Listening oder Webhook zu benachrichtigen, was letztendlich die automatische Ausführung des Testbefehls auslöst.

Für weitere Integrationsmethoden von CI/CD-Plattformen siehe den Abschnitt CI/CD-Integration der offiziellen Apidog-Dokumentation.

Praktizieren Sie API Design-First in Apidog

Entdecken Sie eine einfachere Möglichkeit, APIs zu erstellen und zu nutzen