Apidog ist eine API-Zusammenarbeits- und -Entwicklungsplattform, die Backend-, Frontend- und QA-Teams hilft, effizienter zu arbeiten. Für QA-Ingenieure bietet Apidog eine Reihe von Testfunktionen, darunter Unit-Tests, Integrationstests, datengesteuerte Tests, Leistungstests, Regressionstests, CI/CD und geplante Überwachung.
Lassen Sie uns den kompletten Workflow für QA-Ingenieure mit Apidog durchgehen, beginnend mit den Grundlagen.
Erste Vorbereitung
Der erste Schritt zum Starten von API-Tests ist das Abrufen einer detaillierten API-Dokumentation. Apidog macht dies einfach, indem es Ihnen ermöglicht, vorhandene API-Dokumentation direkt zu importieren. Dies macht die manuelle Eingabe jedes Endpunkts überflüssig. Gehen Sie einfach zu den Projekteinstellungen
-> Daten importieren
und wählen Sie das entsprechende Datenformat für den Import aus.
Unit-Tests
Unit-Tests sind ein entscheidender Bestandteil des Testprozesses. Sie stellen sicher, dass jede API unter verschiedenen Bedingungen wie erwartet funktioniert. QA-Ingenieure schreiben detaillierte Testfälle, um verschiedene Szenarien abzudecken, wie z. B. Normal-, Ausnahmefälle und Grenzfälle. Dies stellt sicher, dass die API alle möglichen Eingaben verarbeitet.
Beispielsweise benötigt der Endpunkt "Query Pet Details" eine Pet-ID als Parameter, um die Details des Haustiers abzurufen. QA-Ingenieure können petId=123
auf der "Ausführen"-Seite von Apidog eingeben und die Anfrage senden. Anschließend können sie überprüfen, ob die korrekten Haustierdetails zurückgegeben werden.

Um den Test zu automatisieren, können Zusicherungen in den Post-Prozessoren hinzugefügt werden. Diese Zusicherungen überprüfen, ob die korrekte Pet-ID im Feld data
in der Antwort erscheint. Durch die Verwendung des JSONPath-Ausdrucks $.data.id
und die Einstellung der Zusicherung auf Exists
kann die Pet-ID extrahiert und automatisch validiert werden.

Sie können die Zusicherung auch direkt aus der zurückgegebenen Antwort extrahieren.

Sobald diese Schritte abgeschlossen sind, kann der Testfall gespeichert werden. Bei Bedarf können zusätzliche normale und anormale Testfälle erstellt werden, z. B. "Pets Available for Sale", "Pets Sold", "Record Not Found" und "Incorrect ID Format". Diese gespeicherten Testfälle können in zukünftigen Regressionstests schnell und einfach ausgeführt werden, um die Stabilität der Kernfunktionalitäten zu überprüfen.

Integrationstests
Das Testen einzelner APIs ist wichtig, aber reale Anwendungen erfordern oft, dass mehrere APIs zusammenarbeiten. Integrationstests stellen sicher, dass diese APIs korrekt interagieren. Sie simulieren reale Benutzeraktionen und testen den Datenaustausch und den Workflow zwischen APIs.
Beispielsweise könnten Benutzer in einem Haustierkaufprozess Haustierlisten durchsuchen, Haustiere in den Warenkorb legen, eine Bestellung aufgeben, eine Zahlung vornehmen und die Bestelldetails anzeigen. QA-Ingenieure können in Apidog ein Testszenario erstellen und Testfälle für jeden an dem Prozess beteiligten Endpunkt hinzufügen.

Der Datentransfer zwischen Endpunkten ist entscheidend, um sicherzustellen, dass der Testprozess abgeschlossen ist. Nehmen Sie den Haustierkauf-Flow als Beispiel. QA-Ingenieure können die Bestell-ID auf zwei Arten zwischen den Schritten übergeben:
- Methode 1: Speichern Sie nach dem Ausführen des Endpunkts "Bestellung erstellen" die generierte Bestell-ID als Variable und verwenden Sie sie in den nachfolgenden Zahlungs- und Bestellabfrage-Endpunkten.
- Methode 2: Verwenden Sie den Rückgabewert des Endpunkts "Bestellung erstellen" direkt in den Zahlungs- und Bestellabfrage-Endpunkten (diese Methode ist einfacher und wird empfohlen).

Für Batch-Operationen, wie z. B. das Hinzufügen mehrerer Haustiere zum Warenkorb, kann eine ForEach
-Schleife hinzugefügt werden. Setzen Sie das Schleifen-Array auf die Haustierliste.

Die Pet-ID wird automatisch eingefügt, was Massenvorgänge vereinfacht.
Führen Sie nach dem Einrichten alles das Testszenario aus. Dadurch wird ein detaillierter Testbericht generiert. QA-Ingenieure können dann schnell Probleme finden und beheben.

Datengesteuerte Tests
In einigen Fällen muss derselbe Endpunkt mit mehreren Datensätzen getestet werden. Die datengesteuerte Testfunktion von Apidog hilft dabei. QA-Ingenieure können eine CSV-Datei mit verschiedenen Datensätzen importieren. Diese Sätze können dann im Testszenario verwendet werden, um Tests automatisch auszuführen.
So funktioniert es: QA-Ingenieure erstellen ein neues Testszenario, fügen den Endpunkt "Pet-Informationen erstellen" hinzu und importieren die CSV-Datei in die Testdaten
. Jede Zeile (wobei die erste Zeile der Variablenname ist) in der CSV-Datei stellt einen Datensatz dar, der in der API-Anfrage verwendet werden kann.

Verweisen Sie in der JSON-Body der Endpunktanfrage auf diese Variablen, um die Daten aus der CSV-Datei zuzuordnen.

Wählen Sie die entsprechenden Testdaten und die Umgebung aus und führen Sie dann den Test aus. Apidog führt automatisch die Endpunktfälle für jeden Datensatz aus und generiert Ausführungsstatus und Berichte für jede Runde.

Durch die Automatisierung von Massentests auf diese Weise verbessert Apidog sowohl die Effizienz als auch die Genauigkeit des Testprozesses erheblich.
Leistungstests
Sobald die grundlegende Funktionalität eines Endpunkts validiert wurde, ist der nächste Schritt der Leistungstest. Dadurch wird geprüft, wie sich das System unter hohem Datenverkehr verhält. Apidog bietet Leistungstesttools, die mehrere virtuelle Benutzer simulieren, um die Reaktion des Systems zu testen.
Beispielsweise können QA-Ingenieure in einem Bestellszenario die Anzahl der virtuellen Benutzer (z. B. 10), die Testdauer und die Ramp-Up-Zeit (z. B. 1 Minute) festlegen. Während des Tests generiert Apidog Echtzeitdiagramme, die wichtige Metriken wie Anfragen pro Sekunde, Serverantwortzeit und Fehlerraten anzeigen. Dies hilft QA-Ingenieuren, Leistungsengpässe zu identifizieren und entsprechend zu optimieren.


Regressionstests
Wenn sich Systeme weiterentwickeln, können sich neue Funktionen auf die vorhandene Funktionalität auswirken. Regressionstests stellen sicher, dass neue Updates keine Kernfunktionen unterbrechen. In Apidog können QA-Ingenieure einen Regressionstestordner erstellen und wichtige Testszenarien hinzufügen. Vor jeder Veröffentlichung können sie diese Tests in großen Mengen ausführen, um sicherzustellen, dass alles wie erwartet funktioniert.

CI/CD-Integration
In modernen Entwicklungsworkflows sind Continuous Integration (CI) und Continuous Deployment (CD) entscheidend für die Aufrechterhaltung schneller Release-Zyklen und hochwertigen Codes. Apidog lässt sich nahtlos in CI/CD-Tools wie Jenkins integrieren, sodass automatisierte Tests als Teil der Build-Pipeline ausgeführt werden können.
QA-Ingenieure können auf der Seite CI/CD
in einem bestimmten Testszenario die entsprechende Umgebung und die Testdaten auswählen und die Benachrichtigungen für Testergebnisse aktivieren (unterstützt verschiedene Benachrichtigungsmethoden wie E-Mail, Slack, Webhook und Jenkins usw.). Wählen Sie als Nächstes das entsprechende CI/CD-Tool aus, kopieren Sie den generierten Befehl und konfigurieren Sie ihn in Jenkins oder einem anderen Build-Tool.

Es ist wichtig, während des Integrationsprozesses das Access Token
zu generieren und zu konfigurieren, um eine reibungslose Authentifizierung und Kommunikation mit Jenkins sicherzustellen. Nach der Konfiguration führt Apidog die Tests automatisch jedes Mal aus, wenn ein Build ausgelöst wird, und sendet die Testergebnisse über die ausgewählte Benachrichtigungsmethode an das Team, wodurch die Zusammenarbeitseffizienz verbessert wird.


Geplante Aufgaben für API-Tests
Manchmal ist es notwendig, Tests regelmäßig auszuführen, um sicherzustellen, dass das System stabil bleibt. Die Funktion geplante Aufgaben von Apidog ermöglicht es QA-Ingenieuren, diesen Prozess zu automatisieren. Sie können Tests so planen, dass sie zu bestimmten Zeiten ausgeführt werden, und Benachrichtigungen über die Ergebnisse erhalten.
Vor der Verwendung dieser Funktion müssen QA-Ingenieure den Apidog-Runner auf dem Server installieren. Dadurch wird sichergestellt, dass die geplanten Aufgaben unabhängig auf dem Server ausgeführt werden können, ohne dass der lokale Computer eingeschaltet sein muss. Nach der Installation können QA-Ingenieure eine neue geplante Aufgabe erstellen, das Testszenario auswählen, den Ausführungsmodus und den Server festlegen und Benachrichtigungen aktivieren.

Nachdem die Aufgabe ausgeführt wurde, zeichnet Apidog die Ergebnisse auf und sendet sie an das Team, um Probleme schnell zu erkennen und zu beheben.

Abschließende Erkenntnisse
Apidog bietet eine umfassende Reihe von Funktionen, die den API-Testlebenszyklus erheblich rationalisieren, von der ersten Vorbereitung bis zur kontinuierlichen Überwachung. Mit robusten Fähigkeiten in Unit-, Integrations-, datengesteuerten, Leistungs-, Regressionstests und CI/CD sowie geplanten Aufgaben stellt Apidog effiziente, zuverlässige und skalierbare API-Tests sicher. Durch die Integration von Apidog in Ihre Test-Workflows können Teams Zeit sparen, Fehler reduzieren und qualitativ hochwertige APIs schneller bereitstellen, was zu einer verbesserten Systemstabilität und -leistung führt.