Postman Lasttest-Tutorial
Viele der heutigen Webdienste integrieren APIs (Application Programming Interfaces), die den Austausch vielfältiger Informationen zwischen Systemen ermöglichen. APIs dienen als robuste Verbindung zwischen wichtigen Diensten und Benutzern. Wie bei jedem wichtigen Systembestandteil ist es unerlässlich, APIs zu bewerten. Der Einsatz von Drittanbieter-API-Testtools wie Postman erleichtert sowohl manuelle als auch automatisierte Tests und umfasst Funktionen zur API-Überwachung.
Postman ist ein weithin anerkanntes Tool im Bereich der Testwerkzeuge zur Validierung von API-Anfragen. Während seine Verwendung für allgemeine API-Tests weit verbreitet ist, gestaltet sich der Einsatz von Postman für Lasttests nicht ganz so einfach.
In diesem Postman-Lasttest-Tutorial behandeln wir, was Postman ist, Postman-Lasttests und wie man Lasttests mit Postman durchführt, damit Sie mit dem Lasttesten in Postman beginnen können.
Was ist Postman?
Postman ist ein weit verbreitetes Tool, das Entwicklern hilft, APIs in einer kollaborativen und benutzerfreundlichen Umgebung zu testen, zu entwerfen und zu verwalten. Mit Postman können Entwickler HTTP-Anfragen einfach erstellen, senden und testen, besonders für RESTful APIs. Es unterstützt verschiedene HTTP-Methoden, Authentifizierungstypen und ermöglicht das Organisieren und Automatisieren von API-Testabläufen, was es zu einem unverzichtbaren Werkzeug im API-Entwicklungsprozess macht. Postman wird häufig in API-getriebenen Umgebungen verwendet, in denen Dienste über Microservices und Cloud-Plattformen verteilt sind. Heute ist Postman auch weit verbreitet in modernen API-Ökosystemen, die Microservices, containerisierte Anwendungen und cloud-native Architekturen umfassen, wodurch die API-Validierung ein kritischer Bestandteil des Entwicklungsablaufs ist.
Postman ist ein API-Entwicklungstool, das im Softwareentwicklungszyklus genutzt wird:
- API-Entwicklung
- API-Tests
- API-Dokumentation
Aber Postman ist nicht nur für die Entwicklung gedacht. Es kann auch wie ein Browser fungieren, um Anfragen zu senden und Antworten zu empfangen. Außerdem können Sie Skripte hinzufügen, die vor dem Senden von Anfragen und nach dem Empfangen von Antworten ausgeführt werden, was Ihnen mehr Kontrolle über Ihre API-Interaktionen gibt. Anfragen können in Sammlungen gespeichert werden, um sie bei Bedarf in einer bestimmten Reihenfolge auszuführen, wodurch Ihr Arbeitsablauf organisierter wird.
Wenn es um API-Tests geht, ist Postman ein großartiges Werkzeug, um sicherzustellen, dass alles wie erwartet funktioniert. Es hilft zu überprüfen, dass Ihre API Daten korrekt abruft, speichert und aktualisiert, was es zu einem wichtigen Teil der Funktionalitätstests macht. Es ist jedoch wichtig zu beachten, dass Postman nicht für Leistungstests gebaut wurde. Zwar kann es kleine Tests zur Überprüfung der Antwortzeiten durchführen, simuliert aber keinen realen Traffic oder hohe Lasten. Wenn Sie also sehen möchten, wie Ihre API unter Druck standhält, benötigen Sie ein spezielles Lasttest-Tool.
Für tiefgreifendere Leistungstests benötigen Sie ein spezialisiertes Lasttest-Tool wie LoadView. Tools wie LoadView können reale Bedingungen simulieren, die Ihnen helfen, Ihre APIs zu einem Stresstest zu unterziehen und umfassende Metriken zu sammeln, um sicherzustellen, dass sie hohem Traffic und intensiver Nutzung standhalten. Dies ist entscheidend, um sicherzustellen, dass Ihre API unter allen Umständen gut funktioniert und nicht nur in kontrollierten Testumgebungen.
Postman-Funktionen
Postman bietet Anwendern eine umfangreiche Palette an Funktionen, von der Postman API und Workflow-Steuerungen bis hin zu eingebauten Monitoren für Regressionstests, die umfassende API-Testmöglichkeiten gewährleisten. Trotz der Vielzahl an Funktionen gibt es einige Kernfunktionalitäten, die für jeden API-Tester unerlässlich sind. Lassen Sie uns diese Schlüsselfunktionen genauer betrachten.
- Importieren von Anfragen – Postman verfügt über eine Import-Funktion, mit der Nutzer rohen CURL-Text einfügen können, der dann in eine formatierte Anfrage mit Details wie Anfrage-URL, Headern, Anfragekörper, Abfrageparametern und Autorisierungstoken umgewandelt wird.
- Mehrere Protokolle und Unterstützung – Postmans API-Client-Funktion ermöglicht das Senden von REST-, SOAP-, WSDL- und GraphQL-Anfragen.
- Testfälle schreiben – Sie können Testfälle schreiben, um APIs auszuführen und die Antwortvalidierung zu unterstützen, einschließlich Assertions für JSON/XML-Antworten und Überprüfung von Antwortcodes.
- Sammlungen – Postman unterstützt die Erstellung von Sammlungen, mit denen APIs innerhalb einer Ordnerstruktur für unterschiedliche Projekte organisiert werden können. Es bietet die Möglichkeit, eine Sammlung auszuführen, die anschließend alle APIs in dieser spezifischen Sammlung ausführt.
- JSON-Schema-Validierung – JSON (JavaScript Object Notation) Schema kann verwendet werden, um die Struktur von Anfragen und Antworten zu definieren. Dies hilft dabei, JSON-Inhalte zu organisieren und zu strukturieren, was ihre Klarheit und Lesbarkeit innerhalb von Postman verbessert.
- Umgebungs- und dynamische Variablen verwenden – In Postman können Sie Variablen erstellen, denen unterschiedliche Werte zugewiesen werden können. Dies ist nützlich, wenn Sie mit identischen APIs in mehreren realen Umgebungen arbeiten.
- API in Code umwandeln – Postman ermöglicht es, die API-Anfrage in Code in allen gängigen Sprachen wie JavaScript, Golang, Java, PHP, Python und vielen mehr zu konvertieren.
Vorteile von Postman Load Testing
- Leistungsbewertung: Lasttests helfen, die Leistung Ihrer APIs unter verschiedenen Stufen gleichzeitiger Benutzeraktivität zu bewerten. Sie ermöglichen Ihnen zu verstehen, wie Ihr System mit erhöhten Lasten umgeht und ob es die Leistungserwartungen erfüllt.
- Skalierbarkeitstests: Die Lasttest-Funktionen von Postman ermöglichen es Ihnen, die Skalierbarkeit Ihrer API zu testen und zu bestimmen, wie gut sie wachsenden Verkehrsmengen und Datenmengen standhält.
- Identifizierung von Engpässen: Lasttests helfen, potenzielle Engpässe oder Schwachstellen in Ihrer API-Infrastruktur zu erkennen. Diese Informationen sind entscheidend, um Ihr System zu optimieren und feinzujustieren, sodass es erhöhte Lasten effizient bewältigen kann.
- Stresstests: Postman ermöglicht es Ihnen, stressige Bedingungen zu simulieren, indem hohe Lasten auf Ihre API erzeugt werden. Dies hilft zu verstehen, an welchen Stellen und Grenzen Ihr System an seine Leistungsfähigkeit stößt und notwendige Verbesserungen vorzunehmen.
- Gleichzeitigkeitstests: Lasttests in Postman erlauben es zu prüfen, wie gut Ihre API funktioniert, wenn mehrere Nutzer gleichzeitig Anfragen stellen. Dies ist wichtig für Anwendungen, die auf gleichzeitige Benutzerinteraktionen ausgelegt sind.
- Kosteneffizienz: Durch frühzeitiges Erkennen und Beheben von Leistungsproblemen im Entwicklungszyklus kann das Lasttesten mit Postman zur Kosteneinsparung beitragen, indem potenzielle Ausfallzeiten oder teure Korrekturen in der Produktion vermieden werden.
- Verbessertes Benutzererlebnis: Indem sichergestellt wird, dass Ihre API hohe Lasten bewältigen und unter Stress gut performen kann, bieten Sie Ihren Nutzern ein reibungsloseres und zuverlässigeres Erlebnis.
Lasttesting-Einschränkungen mit Postman
Obwohl Postman ausgezeichnet für API-Tests und Entwicklung ist, hat es Einschränkungen beim Lasttesting. Ein großer Nachteil ist seine Unfähigkeit, hohe Nutzerzahlen gleichzeitig oder komplexe Szenarien effektiv zu simulieren. Postmans Schwerpunkt liegt auf Funktionstests und Validierung, nicht auf Leistung unter Stressbedingungen. Zudem skaliert die grafische Benutzeroberfläche und die Skriptfähigkeit bei massiven Lasten oder detaillierter Performance-Metrikanalyse nicht so gut wie dedizierte Lasttest-Tools wie LoadView. Für umfassende Lasttesting-Anforderungen wird empfohlen, spezialisierte Tools für Lasttests zu verwenden und sich nicht ausschließlich auf Postman zu verlassen.
Lasttest mit dem Postman REST/RESTFUL Tool
Beim Testen einer Backend-Anwendung ist das Funktionstesten ein Standardprozess, um sicherzustellen, dass alles wie beabsichtigt funktioniert. Ihre Anwendungen werden von vielen, wenn nicht Hunderten oder Tausenden von Nutzern gleichzeitig verwendet, daher müssen wir auch Leistungstests durchführen, um zu sehen, wie gut sie diesem Traffic standhalten. Wir müssen die Anwendung bei jeder Änderung benchmarken und validieren.
Wenn Sie Postman verwenden, um die Funktionalität Ihrer Web-API zu testen und Lasttests aus den API-Aufruf-Sammlungen generieren müssen, können Sie ein Load-Testing-Tool wie LoadView einsetzen. LoadView bietet browserbasierte Lasttests für APIs sowie für Webanwendungen (extern und intern) und Websites und Server.
Postman Load Test Einrichtung
Wir betrachten Schritt für Schritt, wie man einen Webanwendungs-Lasttest für eine Postman-Sammlung einrichtet.
Schritt 1
Bevor wir beginnen, müssen Sie die Postman-Sammlung exportieren. Sie können die Option “Get Public link” wählen und diese dann einfach in LoadView importieren.
- Hinweis: Stellen Sie sicher, dass die Postman-Sammlung nur lokale Variablen verwendet, da Umgebungsvariablen nicht in der Sammlung gespeichert werden.
Schritt 2
Öffnen Sie die LoadView-Plattform und wählen Sie Create New Lasttest.
Schritt 3
Hier sehen Sie die verschiedenen im LoadView verfügbaren Arten von Lasttests.
Web-Apps, Websites und APIs. Für unseren Anwendungsfall wählen Sie die Option Postman Collection, um API-Tests zu starten.
Schritt 4
Ein neues Fenster öffnet sich, hier müssen Sie die exportierte Postman-Sammlung importieren und auf Create Device klicken.
Schritt 5
Sobald das Gerät erfolgreich erstellt wurde, sehen Sie den Bildschirm Test Scenario, wo Sie den Load Type einstellen können. Dies variiert je nach Ziel Ihres Tests.
- Lastbasierte Kurve. Führt Ihre Lasttests mit einer festen Anzahl von Benutzern durch und erhöht den Traffic nach einer festgelegten Aufwärmzeit.
- Zielbasierte Kurve. Diese Testkonfiguration wird verwendet, wenn Sie die gewünschte Anzahl von Transaktionen pro Sekunde für Ihre spezifische API erreichen wollen und beim Skalieren auf die anvisierte Anzahl gleichzeitiger Nutzer.
- Dynamische Kurve. Diese Konfiguration erlaubt es Ihnen, dynamische Werte für die Anzahl der Nutzer, maximale Nutzerzahl und Testdauer auszuwählen. Diese Einstellungen können während des Tests in Echtzeit angepasst werden.
Schritt 6
Nachdem Sie ein Testszenario mit einer Liste aller Ihrer APIs erstellt haben, können Sie nun Last- und Stresstests für Ihre APIs ausführen.
Nach dem Lauf des Lasttests erhalten Sie umfassende Berichte, Dashboards und Metriken, die zeigen, wie Ihre API und Systeme unter verschiedenen Lasten performt haben. Viele Teams korrelieren diese Lasttestergebnisse auch mit Observability-Plattformen, um Infrastrukturmetriken, Datenbankleistung und Dienstabhängigkeiten während hoher API-Traffic zu überwachen.
Integration des Postman Collection Load Tests mit Jenkins
Nachdem wir die Integration und Ausführung von Postman Collection-Lasttests mit LoadView untersucht haben, können wir diese Tests in unsere CI/CD-Pipeline integrieren, um konstante Rückmeldungen und Leistungsergebnisse zu erhalten.
LoadView bietet nahtlose Integration mit Jenkins, die das Stresstesten von Websites, Webanwendungen und APIs mit gleichzeitigen Verbindungen in echten Browsern aus einer vollständig verwalteten Cloud-Umgebung ermöglicht. Das LoadView-Plugin für Jenkins erlaubt Lasttests bei neuen Updates oder zusätzlichen Features.
Sehen wir uns die Schritte an, die für das zuvor in LoadView erstellte Postman-Sammlungstestszenario verwendet werden, und wie es sich mit Jenkins integriert.
Schritt 1
Für die Integration Ihrer Tests mit Jenkins verwenden Sie dasselbe Postman-Test-Szenario aus dem vorherigen Abschnitt.
Schritt 2
Erstellen Sie eine eindeutige UID und kopieren Sie die Integrations-UID. Diese wird als Sicherheitstoken für die Integration in Jenkins verwendet.
Schritt 3
Die Test-Szenario-ID für unsere Postman-Sammlung finden Sie auf der Szenario-Setup-Seite oder auf der Testverlauf-Seite (Test Manager > das Test-Aktionen-Menü > Verlauf).
LoadView Plugin in Jenkins
So konfigurieren Sie das LoadView-Plugin:
- Melden Sie sich bei Ihrem Jenkins-Konto an.
- Gehen Sie in Jenkins zu Credentials > Add Credentials > LoadView Security Token (UID). Konfigurieren und validieren Sie die Anmeldedaten.
- Typ – LoadView Security Token (UID).
- Bereich – Wählen Sie Global.
- ID – Belassen Sie die Voreinstellung oder geben Sie eine eindeutige ID an.
- Beschreibung – Geben Sie eine eindeutige Beschreibung zur Unterscheidung der Anmeldedaten an.
- UID – Fügen Sie die Load Testing Web API UID aus Ihrem LoadView-Konto ein. Nachdem die UID hinzugefügt wurde, klicken Sie auf Validate UID, um sicherzustellen, dass Jenkins Zugriff auf die LoadView API hat.
- Wählen Sie anschließend einen Job aus und klicken Sie auf Configure.
4. Gehen Sie zu Build > Post-build Actions > Add post-build action > LoadView-Run load test scenario. Legen Sie die LoadView-Stresstest-Einstellungen für den Build fest:
- Anmeldedaten – Wählen Sie den API-Schlüssel anhand der Beschreibung aus.
- Szenario-ID – Fügen Sie die Test-Szenario-ID ein, die Sie im Build verwenden möchten. Kopieren Sie die ID von der Szenario-Seite in LoadView.
- Fehlerschwelle – Geben Sie einen akzeptablen Prozentsatz von Sitzungen mit Fehlern an, die während des Tests auftraten (kein Zugriff auf die Zielressource, keine Schlüsselwörter/Bild gefunden, etc.). Wenn der Prozentsatz der fehlerhaften Sitzungen größer als der angegebene Wert ist, wird der Build in Jenkins als fehlerhaft markiert.
- Durchschnittszeit – Geben Sie ein Limit für eine durchschnittliche Antwortzeit an, die während der Testausführung gemessen wird. Wenn das Limit erreicht wird, wird der Build in Jenkins als fehlerhaft markiert.
5. Klicken Sie auf Speichern.
LoadView Testergebnisse anzeigen
Zum Schluss haben wir unsere Postman-Sammlung erfolgreich mit Jenkins unter Verwendung von LoadView integriert. Während unser Stresstest läuft, wird der Status in der Jenkins-Konsole in Echtzeit angezeigt.
Fazit: Lasttests Ihrer API mit Postman
In diesem Leitfaden haben wir gezeigt, wie Sie mit Ihrer Postman-Sammlung unter Verwendung von LoadView gleichzeitige Nutzer simulieren können und wie Sie diesen Schritt mit der Jenkins-Integration automatisieren. In letzter Zeit wurden die Werkzeuge zur Bewertung dieser Anwendungen vereinfacht, was erhebliche Unterstützung beim Testen komplexer Systeme bietet, die sowohl auf interne als auch externe Anwendungen angewiesen sind. Diese Vereinfachung hilft, Engpässe und Probleme mit mehr Klarheit zu identifizieren.
Bei LoadView ist es unser Ziel, Ihr Partner für all Ihre Lasttest-Aktivitäten zu sein, Sie in jeder Entwicklungsphase zu unterstützen und jede Komplexität zu bewältigen. Lasttests müssen nicht kompliziert sein, und die Plattform von LoadView erleichtert den Prozess, Ihre APIs zu testen. Sie können Ihre Postman-Sammlung nahtlos mit LoadView integrieren, um Ihre Lasttests durchzuführen.
Das Team von LoadView steht Ihnen und Ihrem Team zur Seite, während Sie Ihre Lastteststrategie entwickeln und verbessern. Sie werden feststellen, dass unsere Plattform intuitiv und auch für Nicht-Techniker einfach zu bedienen ist. LoadView bietet real browser testing, point-and-click Skripting und umfassende, leicht verständliche Berichte, die das Rätselraten bei Lasttests eliminieren und eine effektive Zusammenarbeit über Entwicklerfunktionen hinweg ermöglichen.
Starten Sie noch heute mit dem Lasttesten Ihrer APIs mit LoadView. Melden Sie sich für die kostenlose Testversion an und erhalten Sie kostenlose Lasttests. Oder melden Sie sich für eine unserer privaten Demos mit einem unserer Performance-Ingenieure an. Unser Ingenieur führt Sie durch die gesamte LoadView-Plattform und zeigt Ihnen, wie Sie LoadView in Postman-Sammlungen integrieren und die Schritte mit Jenkins automatisieren.
Bringen Sie Ihr Lasttesting auf die nächste Stufe
nächste Stufe
Erlebe unvergleichliche Funktionen mit unbegrenzter Skalierbarkeit. Keine Kreditkarte, kein Vertrag.