Um die Vor- und Nachteile von Lasttests Ihrer API zu verstehen, müssen wir zunächst das Konzept der Auslastungstests verstehen. Zunächst betrachten wir einen engen Verwandten der Auslastungstests: Leistungstests.

API-Auslastungstests

Was sind Leistungstests?

Leistungstests sind eine Art von nicht-funktionalen Softwaretestansätzen, die bewerten, wie gut eine Anwendung in Bezug auf Geschwindigkeit, Skalierbarkeit, Reaktionsfähigkeit und Stabilität unter verschiedenen Workloads funktioniert. Es ist eine entscheidende Phase, um eine qualitativ hochwertige Benutzererfahrung zu gewährleisten.

Leider werden Leistungstests oft als separater Prozess angesehen, der nach Abschluss der Funktionstests und in vielen Fällen erst nach der Vorbereitung des Codes für die Veröffentlichung durchgeführt wird. Dies kann zu Problemen führen, daher ist es hilfreich, Leistungstests als obligatorischen Teil des Entwicklungsprozesses einer API oder Website zu betrachten. Mit anderen Worten, Leistungstests sollten kein nachträglicher Einfall sein.

Zu den Zielen von Leistungstests gehören die Bewertung der Programmausgabe, der Verarbeitungsgeschwindigkeit, der Datenübertragungsgeschwindigkeit, der Nutzung der Netzwerkbandbreite, der maximalen gleichzeitigen Benutzer, der Speicherauslastung, der Workload-Effizienz und der Befehlsreaktionszeiten.

Warum Sie sich um Leistungstests kümmern müssen

Leistungstests sollten in alles integriert sein, was Sie in der Softwareentwicklung für das Internet tun, sei es eine Website oder eine App. Leistungstests bieten Ihnen folgende Möglichkeiten:

  • Überprüfen Sie, ob die Anwendung die Leistungskriterien erfüllt (z. B. sollte ein bestimmtes System bis zu 1.000 gleichzeitige Benutzer verarbeiten können).
  • Finden Sie die Rechenengpässe einer Anwendung.
  • Überprüfen Sie, ob die Leistungsstufen, die ein Softwareanbieter angeblich bietet, korrekt sind.
  • Bewerten Sie die Leistung von zwei oder mehr Systemen und bestimmen Sie das beste.
  • Spurstabilität in Zeiten starken Verkehrs.

 

Was sind Auslastungstests?

Lasttests sind eine primäre Leistungstestmethode, mit der wir die Leistung einer Anwendung unter erwarteter realer Belastung bewerten.

Um eine Last von mehreren gleichzeitigen Benutzern zu simulieren, die auf das Programm zugreifen, werden virtuelle Benutzer generiert. Wir bewerten verschiedene Performance-Metriken und lokalisieren Performance-Engpässe über eine simulierte User Load.

Durch Lasttests können wir Skripte schreiben, die dem Server eine Vielzahl von Anforderungen senden, genau wie tatsächliche Benutzer. Diese Tools bieten auch eine Vielzahl von Setups, einschließlich:

  • Die Anzahl der virtuellen Benutzer oder Threads.
  • Länge des Auslastungstests.
  • Leistungsmerkmale.
  • Wir können den Auslastungstest durchführen und die Testergebnisse untersuchen, nachdem wir das Skript erstellt und die Testparameter eingerichtet haben.

 

Vor- und Nachteile von Lasttests

Werfen wir zunächst einen genauen Blick auf einige der Vorteile von Lasttests:

  • Vor der Bereitstellung in der Produktion hilft es bei der Erkennung von Leistungsengpässen.
  • Es hilft, die Infrastruktur auf die bestmögliche Weise aufzubauen. Die Beendigung überschüssiger Geräte kann die Kosten der Infrastruktur senken. Bei unzureichender Infrastruktur kann eine zusätzliche Maschine installiert werden.
  • Durch die Erkennung und Isolierung der Anforderungen, deren Leistung adressiert werden muss, wird die Wahrscheinlichkeit von Ausfallzeiten reduziert.
  • Es vermittelt ein Gefühl der Sicherheit und Zuverlässigkeit in der Wirksamkeit der Anwendung.

Hier sind einige Nachteile des Auslastungstests:

  • Viele Auslastungstesttools erfordern eine Lizenz, die eine erhebliche Summe Geld kosten kann.
  • Selbst mit freien und Open-Source-Technologien wie JMeter ist es notwendig, eine Umgebung aufzubauen, die der Produktionsumgebung so ähnlich ist wie möglich. Dies kann zu weiteren Kosten führen.
  • Das Schreiben von Auslastungstestskripts erfordert Kenntnisse der unterstützenden Skriptsprache des Tools.
  • Falsche Leistungsbedenken können sich aus einem Auslastungstestplan oder Skript ergeben, der falsch entworfen oder programmiert wurde. Ein ordnungsgemäßes Testdesign kann viel Zeit und Ressourcen erfordern.

Obwohl diese Nachteile berechtigt sind, gibt es solide und kostengünstige Möglichkeiten, Auslastungstests von APIs durchzuführen. Schauen wir uns unser eigenes Tool an: LoadView.

LoadView von Dotcom Monitor

LoadView ermöglicht es DevOps-Teams, ihre Websites, Webanwendungen und APIs über gleichzeitige Verbindungen aus vollständig verwalteten Clouds einem Stresstest zu unterziehen.

Obwohl dieser Service bezahlt wird, sind die Kosten für die Basispläne gering, was für eine Einzelperson gut genug ist und die Möglichkeit von hochwertigen Paketen bietet, die für ein großes Unternehmen besser geeignet sind.

Sie erhalten auch kostenlose Tests für die Anmeldung, was ausreicht, um API-Tests von mindestens zwei Projekten zu unterstützen.

Angenommen, Sie haben eine vorhandene API. So führen Sie Ihren ersten Auslastungstest mit LoadView-Tests in fünf Schritten durch.

Schritt 1: Registrieren/Einloggen & Credits erhalten

Klicken Sie hier , um die LoadView Testing Homepage zu sehen. Dort sollten Sie drei verschiedene Arten von Auslastungstestdiensten sehen.

  • Webseiten
  • Webanwendung
  • Webdienste/APIs

API-Auslastungstests

Wählen Sie Webdienste/APIs aus. Um Ihre API zu testen, scrollen Sie nach unten und wählen Sie sie aus.

API-Auslastungstests

Sie werden aufgefordert, sich anzumelden oder anzumelden. Sobald Sie eingeloggt sind, sehen Sie, dass Sie bis zu 5 kostenlose Tests erhalten haben.

Nach der Registrierung sollten Sie zu diesem Fenster weitergeleitet werden:

API-Auslastungstests

Schritt 2: Erstellen eines neuen Auslastungstestgeräts

Klicken Sie auf die Schaltfläche “+ Neuer Test”. Sie werden zum Bildschirm unten weitergeleitet.

API-Auslastungstests

Wählen Sie je nach API den entsprechenden Auslastungstesttyp aus der obigen Liste aus. Für diese Demonstration verwenden wir einen REST-Web-API-Auslastungstesttyp, da wir über eine REST-Web-API verfügen.

Schritt 3: Aufgabenkonfiguration des Auslastungstestgeräts

Das Aufgabenkonfigurationsfenster sollte nun sichtbar sein. Der Titel Ihres Geräts kann von “Ohne Titel” in beliebig geändert werden. Wir empfehlen Ihnen, auch in der Beschreibung des Geräts einen Verweis auf die getestete API anzugeben.

Jetzt, da meine API lokal betriebsbereit ist, muss ich das HTTP-Protokoll anstelle von HTTPS verwenden.

Wenn Sie den detaillierten Schieberegler in der oberen rechten Ecke aktivieren, werden Optionsfelder angezeigt und Sie können das Protokoll auswählen, das Sie verwenden möchten. Wählen Sie in diesem Fall HTTP und geben Sie dann die Domäne und Route der API in das Feld Hostname ein.

Hinweis: Die obigen Verfahren gelten für lokal erstellte APIs. Wenn Sie über eine aktive API verfügen, müssen Sie das HTTPS-Protokoll auswählen.

Geben Sie “IP” in den Parameternamen und “106.201.85.245” in den Parameterwert ein, nachdem Sie auf “Parameter hinzufügen” geklickt haben.

Nachdem Sie die oben genannten Schritte ordnungsgemäß ausgeführt haben, sollte das Formular für die Aufgabenkonfigurations-URL etwa wie folgt aussehen:

API-Auslastungstests

Rufen Sie das Einstellungsfenster auf, indem Sie nach unten scrollen. Da diese Demo-API nur Get-Anfragen unterstützt, können wir den Standard-Anforderungstyp GET beibehalten.

Schritt 4: Erstellen eines Szenarios

Ihr Anwendungsfall bestimmt, wie Sie diesen Abschnitt angehen. Wir verwenden eine Lastschrittkurve mit einer vordefinierten Anzahl schwankender Benutzer für unsere REST-API. Wir benötigen keinen sehr gründlichen Bericht, da diese Demo-API rudimentär ist.

Sie können die LoadView-Wissensdatenbank hier aufrufen, um mehr über die Erstellung eines Szenarios zu erfahren.

Schritt 5: Abschlussbericht

Jetzt wird Ihre API einem Lasttest unterzogen. Dies dauert in der Regel sieben bis zehn Minuten Minuten.

Sie können den Bericht gleichzeitig überprüfen oder später den detaillierten Bericht per E-Mail erhalten.

Möchten Sie mehr über unsere LoadView-Testplattform erfahren? Erwägen Sie, sich noch heute für eine kostenlose Testversion und eine Einzeldemo mit einem Experten für Auslastungstests anzumelden. Wir freuen uns, von Ihnen zu hören.