Was ist Lasttest? (Beispiele)

Load Testing

Was ist Belastungstest?

Load Testing ist ein nicht-funktionaler Softwaretestprozess, bei dem die Leistung einer Softwareanwendung unter einer bestimmten erwarteten Belastung getestet wird. Dabei wird ermittelt, wie sich die Softwareanwendung verhält, wenn mehrere Benutzer gleichzeitig darauf zugreifen. Ziel des Belastungstests ist es, Leistungsengpässe zu beheben und vor der Bereitstellung die Stabilität und reibungslose Funktion der Softwareanwendung sicherzustellen.

Dieser Test identifiziert normalerweise –

  • Die maximale Betriebskapazität einer Anwendung
  • Stellen Sie fest, ob die aktuelle Infrastruktur zum Ausführen der Anwendung ausreicht
  • Nachhaltigkeit der Anwendung im Hinblick auf die Spitzenlast der Benutzer
  • Anzahl der gleichzeitigen Benutzer, die eine Anwendung unterstützen kann, und Skalierbarkeit, um mehr Benutzern den Zugriff darauf zu ermöglichen.

Es handelt sich um eine Art nichtfunktionaler Test. In der Softwareentwicklung werden Lasttests häufig für webbasierte Client/Server-Anwendungen – sowohl Intranet als auch Internet – verwendet.

Bedarf an Lasttests

Bei einigen äußerst beliebten Websites kommt es zu schwerwiegenden Ausfallzeiten, wenn sie ein enormes Verkehrsaufkommen verzeichnen. E-Commerce-Websites investieren stark in Werbekampagnen, jedoch nicht in Lasttests, um eine optimale Systemleistung sicherzustellen, wenn dieses Marketing Traffic generiert.

Betrachten Sie die folgenden Beispiele für Belastungstests

  • Der beliebte Spielwarenladen Toysrus.com konnte den durch seine Werbekampagne verursachten erhöhten Traffic nicht bewältigen, was zu einem Verlust von Marketinggeldern und potenziellen Spielzeugverkäufen führte.
  • Die Website einer Fluggesellschaft war während eines Festivalangebots nicht in der Lage, mehr als 10000 Benutzer zu bedienen.
  • Die Encyclopedia Britannica hatte den kostenlosen Zugang zu ihrer Online-Datenbank als Werbeangebot angekündigt. Sie war wochenlang nicht in der Lage, den enormen Datenverkehr zu bewältigen.

Bei vielen Websites kommt es zu verzögerten Ladezeiten, wenn sie starken Verkehr verzeichnen. Einige Fakten –

  • Die meisten Benutzer klicken nach einer Verzögerung von 8 Sekunden beim Laden einer Seite wieder weg
  • 4.4 € BillIon geht jedes Jahr aufgrund schlechter Leistung verloren

Warum Lasttests?

  • Lasttests geben Vertrauen in das System und seine Zuverlässigkeit und Leistung.
  • Lasttests helfen dabei, Engpässe im System bei starker Benutzerbelastung zu identifizieren, bevor sie in einer Produktionsumgebung auftreten.
  • Lasttests bieten hervorragenden Schutz vor schlechter Leistung und berücksichtigen ergänzende Strategien für das Leistungsmanagement und die Überwachung einer Produktionsumgebung.

Ziele des Lasttests

Durch Belastungstests lassen sich die folgenden Probleme identifizieren, bevor die Anwendung auf den Markt oder in die Produktion gebracht wird:

  • Reaktionszeit für jede Transaktion
  • Leistung von Systemkomponenten unter verschiedenen Belastungen
  • Leistung von Datenbankkomponenten unter verschiedenen Lasten
  • Netzwerkverzögerung zwischen dem Client und dem Server
  • Probleme beim Softwaredesign
  • Serverkonfigurationsprobleme wie ein Webserver, Anwendungsserver, Datenbankserver usw.
  • Probleme mit Hardwareeinschränkungen wie CPU-Maximierung, Speicherbeschränkungen, Netzwerkengpass usw.

Durch Lasttests wird ermittelt, ob das System einer Feinabstimmung bedarf oder Änderungen an Hardware und Software erforderlich sind, um die Leistung zu verbessern. Um Auslastungstests effektiv durchzuführen, können Sie verschiedene verwenden Leistungstest-Tools die Ihnen zur Verfügung stehen, um Ihnen bei der Identifizierung von Verbesserungspotenzialen zu helfen.

Voraussetzungen für Lasttests

Die wichtigste Messgröße für Lasttests ist die Antwortzeit. Bevor Sie mit dem Lasttest beginnen, müssen Sie Folgendes bestimmen:

  • Ob die Reaktionszeit bereits gemessen und verglichen wird – Quantitativ
  • Ob die Reaktionszeit auf den Geschäftsprozess anwendbar ist – Relevant
  • Ob die Reaktionszeit vertretbar ist – Realistisch
  • Ob die Reaktionszeit erreichbar ist – erreichbar
  • Ob die Reaktionszeit mit einem Werkzeug oder einer Stoppuhr messbar ist – messbar

Vor Beginn des Lasttests muss eine Umgebung eingerichtet werden:

Hardware-Plattform Software-Konfiguration
  • Servermaschinen
  • Prozessoren
  • Memory
  • Festplattenspeicherplatz
  • Maschinenkonfiguration laden
  • Netzwerkkonfiguration
  • Betriebssystem
  • Server-Software

Strategien des Lasttests

Es gibt viele Möglichkeiten, Lasttests durchzuführen. Im Folgenden finden Sie einige Lastteststrategien:

Strategien des Lasttests

  • Manueller Lasttest: Dies ist eine der Strategien zur Durchführung von Lasttests, sie liefert jedoch keine wiederholbaren Ergebnisse, kann keine messbaren Belastungsniveaus für eine Anwendung liefern und ist ein Prozess, der nicht koordiniert werden kann.
  • Eigenentwickelte Lasttest-Tools: Eine Organisation, die sich der Bedeutung von Lasttests bewusst ist, kann ihre eigenen Tools zur Durchführung von Lasttests entwickeln.
  • Open-Source-Lasttest-Tools: Es gibt mehrere Lasttest-Tools, die als Open Source verfügbar sind und kostenlos sind. Sie sind vielleicht nicht so anspruchsvoll wie ihre kostenpflichtigen Gegenstücke, aber wenn Sie ein begrenztes Budget haben, sind sie die beste Wahl.
  • Lasttest-Tools der Enterprise-Klasse: Sie verfügen normalerweise über eine Aufnahme-/Wiedergabefunktion. Sie unterstützen eine Vielzahl von Protokollen. Sie können eine außergewöhnlich große Anzahl von Benutzern simulieren.

So führen Sie Lasttests durch

Der Auslastungstestprozess kann wie folgt kurz beschrieben werden:

  1. Erstellen Sie eine dedizierte Test Umgebung für Belastungstests
  2. Bestimmen Sie Folgendes
  3. Testszenarien laden
  4. Bestimmen Sie Lasttesttransaktionen für eine Anwendung
    • Bereiten Sie Daten für jede Transaktion vor
    • Die Anzahl der Benutzer, die auf das System zugreifen, muss vorhergesagt werden
    • Verbindungsgeschwindigkeiten ermitteln. Einige Benutzer sind möglicherweise über Mietleitungen verbunden, während andere möglicherweise eine Einwahlverbindung verwenden
    • Ermitteln Sie die verschiedenen von den Benutzern verwendeten Browser und Betriebssysteme 
    • Eine Konfiguration aller Server wie Web-, Anwendungs- und DB-Server
  5. Ausführung und Überwachung von Testszenarien. Sammeln verschiedener Kennzahlen
  6. Analysieren Sie die Ergebnisse. Empfehlungen geben
  7. Feinabstimmung des Systems
  8. Erneut testen

Richtlinien für Lasttests

Richtlinien für Lasttests

  1. Lasttests sollten geplant werden, sobald die Anwendung funktionsstabil ist.
  2. Im Datenpool sollte eine große Anzahl eindeutiger Daten bereitstehen
  3. Die Anzahl der Benutzer sollte für jedes Szenario oder Skript festgelegt werden
  4. Vermeiden Sie die Erstellung detaillierter Protokolle, um Speicherplatz auf der Festplatte zu sparen
  5. Vermeiden Sie das Herunterladen von Bildern auf der Website
  6. Bei der Ausführung von Lasttest-Testfällen sollte die Konsistenz der Antwortzeit über den verstrichenen Zeitraum protokolliert und mit verschiedenen Testläufen verglichen werden.

Unterschied zwischen Last- und Stresstests

Load Testing Belastbarkeitstest
Lasttests identifizieren die Engpässe im System unter verschiedenen Arbeitslasten und prüfen, wie das System reagiert, wenn die Last allmählich erhöht wird Belastbarkeitstest Bestimmt den Bruchpunkt des Systems, um den maximalen Punkt anzuzeigen, nach dem es bricht.
Um die Obergrenze des Systems zu erkennen, legen Sie das SLA der App fest und prüfen Sie, wie das System eine hohe Belastung bewältigen kann. Um herauszufinden, wie sich das System unter extremen Belastungen verhält und wie es sich nach einem Ausfall erholt.
Das Hauptziel von Lasttests besteht darin, eine erhöhte Last für eine Webanwendung zu erzeugen. Durch Stresstests soll sichergestellt werden, dass die Server bei plötzlicher hoher Auslastung über einen längeren Zeitraum nicht abstürzen.
Die Attribute, die bei einem Lasttest überprüft werden, sind Spitzenleistung, Serveranzahl und Antwortzeit. Diese Art von Tests überprüft die Stabilität, die Reaktionszeit usw.
Bei Belastungstests ist die Belastungsgrenze ein Schwellenwert für einen Bruch. Bei Stresstests liegt die Belastungsgrenze oberhalb der Bruchschwelle.

Unterschied zwischen Funktions- und Lasttests

Funktionsprüfung Load Testing
Ergebnisse von Funktionstests sind leicht vorhersehbar, da wir die richtigen Schritte und Voraussetzungen definiert haben Ergebnisse von Belastungstests sind unvorhersehbar
Die Ergebnisse der Funktionstests variieren geringfügig Die Ergebnisse der Belastungstests variieren drastisch
Häufigkeit der Ausführung Funktionsprüfung wird hoch sein Die Häufigkeit der Ausführung von Lasttests wird gering sein
Ergebnisse von Funktionstests sind abhängig von den Testdaten Der Lasttest hängt von der Anzahl der Benutzer ab.

Testtools laden

Läufer laden:

Load Runner ist ein HP-Tool zum Testen der Anwendungen unter normalen und Spitzenlastbedingungen. Load Runner generiert Last, indem er virtuelle Benutzer erstellt, die den Netzwerkverkehr emulieren. Es simuliert die Echtzeitnutzung wie eine Produktionsumgebung und liefert grafische Ergebnisse.

Lesen Sie mehr über Loadrunner HIER.

Vor- und Nachteile von Lasttests

Im Folgenden sind die Vorteile von Belastungstests aufgeführt:

  • Identifizierung von Leistungsengpässen vor der Produktion
  • Verbessert die Skalierbarkeit des Systems
  • Minimieren Sie das Risiko im Zusammenhang mit Systemausfallzeiten
  • Reduzierte Ausfallkosten
  • Steigerung der Kundenzufriedenheit

Nachteile von Lasttests:

  • Für den Einsatz von Werkzeugen zur Durchführung eines Lasttests im Rahmen von Softwaretests sind Programmierkenntnisse erforderlich.
  • Tools können teuer sein, da die Preisgestaltung von der Anzahl der unterstützten virtuellen Benutzer abhängt.

Zusammenfassung

  • Unter Lasttest versteht man eine Art Softwaretest, der die Leistung eines Systems unter realen Lastbedingungen ermittelt.
  • Lasttests verbessern typischerweise Leistungsengpässe, Skalierbarkeit und Stabilität der Anwendung, bevor sie für die Produktion verfügbar ist.
  • Mithilfe dieser Tests lassen sich die maximale Betriebskapazität von Anwendungen sowie Systemengpässe ermitteln.
  • Belastungstests in Softwaretest ist wichtig, denn wenn es ignoriert wird, kann es zu finanziellen Verlusten für eine Organisation kommen.