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 Lasttest. Lasttests 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. Während sich die Technologie und die Benutzerfreundlichkeit weiterentwickeln, ermöglicht die Verwendung eines echten Chrome-Browsers den Testern die Verwendung einer realistischeren Umgebung, die für die Simulation von Echten Benutzern erforderlich ist, und genauere Auslastungstestergebnisse.

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. Auf diese Weise können Tester die identischste Benutzerreise simulieren wie im realen Szenario.

 

Vorteile von Real Browser-based Load Testing

 

Benutzerperspektive

Reale Endnutzer interagieren mit der Website beispielsweise über Browser in einem echten Chrome-Browser. Browser-basierte Auslastungstests ermöglichen es Ihnen, Ihre Website mit einem normalen Chrome-Browser zu testen und das reale Benutzerverhalten zu verstehen.

 

Einfache Skripte

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

 

Reduzierte Testkomplexität

Im Gegensatz zu anderen herkömmlichen Auslastungstestmethoden, bei denen Parameter und Werte ausgeführt werden müssen, sind browserbasierte Auslastungstests einfach mit optimierten Skripts zu erstellen und zu 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 mit Ihrem Website über einen normalen Browser 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 Selen ium 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-Auslastungstests 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 Art des Auslastungstests, indem der Datenverkehr auf HTTP/S-Ebene auf Lastservern 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 ist, 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 Metriken auf Protokollebene analysiert werden soll, bieten protokollbasierte Auslastungstests eine schnellere Testausführung für eine höhere erwartete Last.

 

Nachteile von protokollbasierten Auslastungstests

 

Komplexe Tests

Protokollbasiertes Skripting erfordert ein gründliches Verständnis verschiedener Protokolle, die auf HTTP/S-Ebene verwendet werden, z. B. 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 mit starker Verwendung von Browser-JavaScript- und AJAX-Aufrufen, die protokollbasierte Auslastungstests in vielen Testszenarien eingeschränkt machen.

 

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 umfassende Benutzererfahrungen und verlassen sich stark auf browserseitige Interpretation und Rendering statt auf Serverseite. Einseitige Anwendungen (PSS) werden jetzt häufig mit gängigen Frameworks verwendet, die clientseitige JavaScript-Frameworks und AJAX-Aufrufe verwenden, da für die Aktualisierung der Benutzeroberfläche nur wenig bis gar keine Seitenaktualisierung möglich ist.

LoadView bietet cloudbasierte Auslastungstests mit echten Browsern wie Chrome, um die realistischste Umgebung für Ihre Auslastungstestszenarien zu erstellen. Mit LoadView können Sie ganz einfach Skripts für verschiedene Benutzeraktionen und -verhalten 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 20 USD in Auslastungstestguthaben, um mit Ihren Browser-basierten Auslastungstests in Chrome zu beginnen.