Entweder Sie haben eine neue Website, oder haben gerade einige Funktionen entwickelt, die Ihre Benutzer benötigen, wie stellen Sie sicher, dass Ihre Website gut funktioniert, wenn eine hohe Anzahl von Benutzern beginnen, mit ihr zu interagieren? Die Antwort ist Auslastungstest. Auslastungstests sind ein wichtiger Bestandteil von Leistungstests, die verwendet werden, um das Verhalten einer Website, Anwendung oder Software unter normalen und Spitzenbedingungen zu bestimmen. Auslastungstests bieten nützliche Daten, die die Leistung Ihrer Website verbessern und die Stabilität für erwartete Auslastungsbedingungen erhöhen können. Bis vor kurzem war das protokollbasierte Auslastungstesten die einzige Methode, um die Website auf die erwarteten Auslastungsbedingungen zu testen. Da sich die Technologie und die Benutzererfahrung weiterentwickeln, ermöglicht die Verwendung eines echten Chrome-Browsers den Testern , eine realistischere Umgebung zu verwenden, die für die Simulation realer Benutzer erforderlich ist, und genauere Lasttestergebnisse.

In diesem Artikel werden wir über die folgenden drei weit verbreiteten Lasttestansätze sprechen:

  1. Browserbasiertes Auslastungstest (verwenden eines normalen Chrome-Browsers)
  2. Headless Browser Load Testing
  3. Protokollbasierte Auslastungstests

 

Chrome Browser-basierte Auslastungstests

Browser-basierte Auslastungstests simulieren reale Benutzer, indem sie reguläre Chrome-Browserinstanzen über Lastgeneratoren erstellen, und die zu testende Website wird mit Hilfe einfacher Skripts navigiert. Dies schafft eine fast identische Umgebung als echte Benutzer in der realen Welt. Die virtuellen Benutzer in browserbasierten Auslastungstests werden als Browser Level Users (BLU) bezeichnet. Browserbasierte Auslastungstestskripts haben Anweisungen zur tatsächlichen Navigation und Interaktion auf der Website. Zum Beispiel, auf welche Schaltfläche geklickt werden soll, wo genavigiert werden soll, welche Informationen in Eingabefelder eingespeist werden sollen, wie mit einem Element zu interagieren, wann mit einem Element zu interagieren ist usw. Dies ermöglicht es den Testern, die identische User Journey wie in der realen Welt zu simulieren .

 

Vorteile von Real Browser-based Load Testing

 

Benutzerperspektive

Echte Endnutzer interagieren mit der Website über Browser, z. B. in einem echten Chrome-Browser. Browserbasierte Auslastungstests ermöglichen es Ihnen, Ihre Website mit einem normalen Chrome-Browser zu testen und das reale Nutzerverhalten zu verstehen.

 

Einfache Skripte

Zum Erstellen von browserbasierten Auslastungstestskripts müssen Sie keine eingehenden Kenntnisse der zugrunde liegenden Protokolle benötigen. Wenn Sie beispielsweise eine Anmeldeaktion erstellen möchten, müssen Sie nur den Benutzernamen und das Kennwort eingeben, und auf welche Schaltfläche Sie klicken müssen, um fortzufahren, müssen Sie die technischen Details von Authentifizierungsprotokollen und dergleichen nicht kennen.

 

Reduzierte Testkomplexität

Im Gegensatz zu anderen herkömmlichen Auslastungstestmethoden, bei denen Sie Parameter und Werte zum Bestehen benötigen, lassen sich browserbasierte Auslastungstests mit optimierten Skripts einfach erstellen und initiieren.

 

Front-End-Optimierung

Browserbasierte Auslastungstests ermöglichen es Ihnen, die genauesten realen Daten zu sammeln, z. B. Netzwerk- und Anforderungsverzögerungen, da Ihre Benutzer auch über einen normalen Browser mit Ihrer Website interagieren. Dies hilft bei der Optimierung Ihres Front-Ends.

 

Geringer Wartungsaufwand

Einfache Skripte und weniger komplizierte Tests bedeuten eine einfachere Wartung und mehr Agilität für Auslastungstests. Wenn wir beispielsweise in unserem Anmeldebeispiel das Authentifizierungsprotokoll ändern, muss der Auslastungstest der Anmeldung nicht geändert werden, da er davon nicht betroffen ist.

 

Nachteile von Real Browser-basierten Auslastungstests

 

Höhere CPU-& Speicherauslastung

Browserbasierte Auslastungstests mit einem normalen Chrome-Browser erfordern z. B. höhere CPU und Arbeitsspeicher, um Instanzen für die erwartete Auslastung zu erstellen. Dies sollte jedoch kein Problem sein, wenn Sie eine cloudbasierte Auslastungstestplattform verwenden.

 

Gelegentlich längere Laufzeit

Browserbasierte Auslastungstests umfassen das Rendern der vollständigen Website-Benutzeroberfläche in einer Browserinstanz anstelle einer einfachen API-Anforderungsantwortaufzeichnung. Dies kann länger dauern als andere Anspannungstests. Es wird jedoch oft durch die Einfachheit der Ausführung von browserbasierten Tests und ein ausgezeichnetes Cloud-basiertes Auslastungstest-Tool konterkariert.

 

Headless Browser Load Testing

Headless Browser-Auslastungstests umfassen das Ausführen von Auslastungstests in einer Browserumgebung, ohne einen “Head” oder eine Benutzeroberfläche zu erstellen. Dies bedeutet, dass Auslastungstests ausgeführt werden, indem unsichtbare Browserinstanzen ohne grafische Benutzeroberfläche (GUI) erstellt werden. Headless Browser-Auslastungstests überspringen das Rendern oder Zeichnen, da niemand die simulierten Browser beobachtet. Sie können Ihre Auslastungstests schnell in einer Browserumgebung mit weniger Ressourcen ausführen als echte browserbasierte Auslastungstests. Beispiele für kopflose Browser sind die folgenden:

 

Headless Chrome

Chrome Browser kann im Headless-Modus mit Version 59 oder höher gestartet werden. Es ist leicht und weniger ressourcenintensiv, das für die Navigation, das Sammeln von Informationen auf Seiten, das Generieren von PDFs und das Erstellen von Screenshots verwendet werden kann.

 

Headless Firefox

Firefox bietet auch einen kopflosen Browser-Modus mit Version 56 oder höher. Es kann für grundlegende Tests mit Testwerkzeugen wie Selenium für Headless-Tests und Automatisierung verwendet werden.

 

PhantomJS

PhantomJS ist ein flexibles headless Webkit, das viele Standards für das Web unterstützt. JavaScript-API wird zum Schreiben von Testskripts verwendet, wenn PhantomJS zum Testen verwendet wird. Es wird hauptsächlich für Navigations- und Assertionstests verwendet.

 

Vorteile von Headless Browser Load Testing

 

Weniger Ressourcenintensiv

Da in den Auslastungstests der Browserumgebung keine GUI gerendert wird, können Sie mit Headless Browser-Auslastungstests mehr Last mit weniger Ressourcen generieren.

 

Schnellere Tests der Browserumgebung

Mit Headless Browser-Belastungstests können Tests schneller ausgeführt werden und erhalten Ergebnisse, um potenzielle Probleme schnell zu beheben.

 

Nachteile von Browser-basierten Auslastungstests

 

Begrenzte Browserumgebungsfunktionen

Während Sie viele browserbasierte Szenarien in der Headless-Browser-Tests testen können, ist es nicht genug, um ein vollständiges Bild von realen Benutzern zu erhalten, die normale Browser wie Chrome verwenden.

 

Fehlende Browserüberwachung

In wenigen Testfallszenarien müssen Sie Ihre browserbasierten Tests, z. B. Animationen, SPA-Übergänge usw., anzeigen, um Ihre Auslastungstests gründlich zu analysieren. Headless-Browser-Ladetests verfügen nicht über diese Funktion.

 

Protokollbasierte Auslastungstests

Protokollbasierte Auslastungstests sind die traditionellste Methode der Auslastungstests, bei der der Datenverkehr auf HTTP/S-Ebene auf Auslastungsservern simuliert wird. Es wird in erster Linie zum Auswerten und Bewerten des Anforderungs-Antwort-Austauschs für die erwartete Auslastung des Servers verwendet. Protokollbasierte Auslastungstests sind eine minimale Form von Auslastungstests, die allein nicht für komplexe Webanwendungen geeignet sind, die sich auf die Benutzerfreundlichkeit konzentrieren.

 

Vorteile von protokollbasierten Lasttests

 

Am wenigsten Ressourcenintensiv

Protokollbasierte Auslastungstests umfassen nur das Generieren von HTTP/S-Anforderungsantwortdatenverkehr, der die Erzeugung einer sehr hohen Last mit minimalen Ressourcen ermöglicht.

 

Schnellere Ausführung

Da nur HTTP/ S-Datenverkehr auf Protokollebene auf Metriken analysiert werden soll, bieten protokollbasierte Auslastungstests eine schnellere Testausführung für eine höhere erwartete Auslastung.

 

Nachteile von protokollbasierten Auslastungstests

 

Komplexe Tests

Protokollbasiertes Scripting erfordert ein tiefes Verständnis verschiedener Protokolle, die auf HTTP/S-Ebene verwendet werden, wie z. B. das Oauth-Protokoll für die Anmeldung. Dies macht Skripttesttests komplex und zeitaufwändig.

 

Am wenigsten realistische Umgebung

Im Gegensatz zu realen Umgebungen, in denen Benutzer über einen normalen Browser wie Chrome auf Ihre Website zugreifen, bieten protokollbasierte Auslastungstests keine solchen Funktionen. Es ist nicht die richtige Wahl für Websites, die sich auf die Perspektive des Benutzers konzentrieren.

 

Mangelnde Fähigkeiten für moderne Websites

Moderne Websites verfügen jetzt über komplexere Stacks, bei denen beispielsweise Browser-JavaScript und AJAX-Aufrufe stark verwendet werden, wodurch protokollbasierte Auslastungstests in vielen Testszenarien eingeschränkt werden.

 

LoadView für browserbasierte Auslastungstests

Basierend auf dem, was wir bisher diskutiert haben, ist es offensichtlich, dass browserbasierte Auslastungstests die nächste Evolution von Lasttestansätzen sind. Die heutigen Websites und Technologien konzentrieren sich auf eine umfassende Benutzererfahrung und stützen sich stark auf die browserseitige Interpretation und das Rendering und nicht auf die serverseitige Darstellung. Single-Page-Applications (SPAs) werden heute häufig mit gängigen Frameworks verwendet, die clientseitige JavaScript-Frameworks und AJAX-Aufrufe verwenden, um nur wenig oder gar keine Seitenaktualisierung zum Aktualisieren der Benutzeroberfläche zu ermöglichen.

LoadView bietet Cloud-basierte Auslastungstests mit echten Browsern wie Chrome, um die realistischste Umgebung für Ihre Auslastungstestszenarien zu erstellen. Mit LoadView können Sie ganz einfach Skripte für verschiedene Benutzeraktionen und -verhaltensweisen erstellen und Ihre Tests mit wenigen Klicks ausführen.

 

Was Sie mit LoadView testen können

  1. Webseiten
  2. Einzelseite-Anwendungen (SBAs)
  3. Drittanbieter-Service/APIs
  4. Medienreiche Websites wie Streaming-Mediendienste

 

Vorteile und Vorteile von LoadView für echte browserbasierte Auslastungstests

  1. Erstellen Sie ganz einfach Testskripts, ohne eine einzige Codezeile mit EveryStep Web Recorder zu schreiben, um alle Ihre Seiten zu testen.
  2. Über 40 echte Desktop-/Mobilbrowser, mit denen Sie Ihre Webseiten auf praktisch jedem Gerät testen können.
  3. Geoverteilte Auslastungstests ermöglichen es Ihnen, Benutzer von mehreren Standorten aus zu testen, um genauere Ergebnisse in realen Szenarien zu erzielen.
  4. LoadView ist DevOps-freundlich und bietet mehrere Testkurven, um die Leistung zu messen und die Webanwendung zu optimieren.

 

Wrapping Up: Vorteile von echten Browser-basierten Auslastungstests

Browserbasierte Auslastungstests sind eine Notwendigkeit für Websites, die auf modernen Frameworks und medienreichen Inhalten basieren. Laden Sie Tests mit echten Browsern wie Chrome, die mehr als 65% des Marktanteilshat, bieten Ihnen viele Leistungsergebnisse, um Ihre Website schnell zu optimieren. Sie sollten sich jedoch nicht nur auf Chrome für Auslastungstests oder ein einzelnes Gerät beschränken. Wenn Sie Ihre Website auf praktisch jedem Browser oder Gerät von mehreren Geografischen Standorten aus testen können, erhalten Sie umfassende Einblicke in Ihre Tests, um Ihre Website für die erwartete Auslastung zu analysieren und zu optimieren.

Testen Sie LoadView noch heute. Erhalten Sie kostenlose Auslastungstests, um mit Ihren browserbasierten Auslastungstests in Chrome zu beginnen.