Moderne Webseiten-Auslastungstests können aufgrund der Vielzahl integrierter Web-Technologien eine anspruchsvolle Aufgabe sein. Werfen wir einen Blick auf einige der bekanntesten Probleme, die bei der Auswahl der richtigen Art von Testanwendungen berücksichtigt werden müssen, um mit der Webseitenüberwachung zu gehen.
IFrame-Objekte
Heutzutage beinhalten Webseiten viele eingebettete Inhalte von Drittanbietern wie Werbeabschnitte, Analysen, Widgets (Google Maps, YouTube-Videos, etc.). IFrame-Inlineelemente ermöglichen das Einbetten eines anderen Webdokuments in das aktuelle HTML-Dokument. Kurz gesagt, die Verwendung von IFrame-Entwicklern kann Inhalte aus einer externen Quelle oder, mit anderen Worten, einer anderen Webseite auf ihrer Webseite einfügen.
Da IFrame eine separate Webressource enthält, ist der Inhalt innerhalb des IFrame-Elements unabhängig von der aktuellen Webseite und kann durch die einfache HTTP-Anforderung an die übergeordnete URL nicht erreicht werden. Als Antwort auf eine HTTP-Anforderung an die Webseite gibt ein Webserver HTML zurück, aber es ist nicht genau das gleiche wie der echte Browser. Um IFrame-Inhaltsbrowser anzuzeigen, analysieren Sie den HTML-Code der Seite und führen Sie dann Skripts von Drittanbietern aus.
Einseitige Apps
Apropos moderne Trends in der Webentwicklung: Eine einseitige Anwendung (SPA) ist eine weitere knifflige Sache in Bezug auf die Web-Performance-Überwachung. SPA ist eine einzelne URL-Webanwendung, die vollständig in einem Webbrowser ausgeführt wird. Hier sind ein paar Dinge, die Sie beachten sollten, bevor Sie die richtige Anwendung für SPA-Lasttests wählen.
Eines der ersten Elemente, die berücksichtigt werden, ist, dass die SPA-Logik stark auf JavaScript-Technologie basiert. Jedes Mal, wenn ein Benutzer auf eine Schaltfläche klickt oder eine andere Aktion auf der Webseite ausführt (Navigation zwischen Registerkarten, Ausfüllen von Webformularen usw.), führt ein Browser JavaScript aus und rendert die Webseite.
Zweitens umfasst die Authentifizierung in einem SPA HTTP-Header mit Zugriffsanmeldeinformationen (z. B. JSON-Webtoken). Zugriffstoken werden von einem SPA-Server für jede Sitzung bereitgestellt. Wenn ein Browser HTTP-Aufrufe ausführt, extrahiert er das Token aus der SPA-Serverantwort und gibt es mit jeder HTTP-Anforderung zurück.
Umfassende Auslastungstests mit LoadView
Wie oben gezeigt, setzen moderne Web-Apps-Logikmerkmale Einschränkungen für Auslastungstests mit Tools, die auf Protokollebene funktionieren und KEINEN Browser verwenden. Solche Tools ermöglichen das Emulieren von Webanforderungen an den Zielwebserver, ohne die Anwendung selbst zu testen. Das Erstellen von Anforderungen für den Betrieb mit Benutzerdaten auf der Seite erfordert jedoch entsprechende Kenntnisse in der Webentwicklung.
Um sich beispielsweise bei einer Webanwendung anzumelden, die eine Authentifizierung erfordert, müssen Sie die Aufrufe des Clients pro Sitzung authentifizieren. Andernfalls kann die Seitenleistung nicht genau getestet werden.
Als erfolgreiches Ergebnis der HTTP(S)-Anforderung an eine Zielwebseite erhält man außerdem ein “complete”-Ereignis zum Laden der Seite. Gleichzeitig bedeutet dies jedoch nicht, dass alle JavaScripts richtig analysiert oder ausgeführt wurden. Um sicherzustellen, dass ein Benutzer den richtigen Inhalt erhält, scheint ein Assertionsschlüsselwort oder eine Bildüberprüfung die richtige Wahl zu sein. Nehmen wir an, wir müssen das Schlüsselwort auf dem Banner eines Drittanbieters überprüfen, das mit dem<iframe>Tag in HTML dargestellt wird. Da das iframe-HTML-Objekt selbst keine zu überprüfenden Inhalte enthält (es wird von JavaScript geladen), können wir keine Schlüsselwortüberprüfung durchführen, ohne das Skript in einem echten Browser auszuführen.
Auf der anderen Seite funktioniert LoadView wie ein echter Browser und unterstützt JavaScript-Ausführung und Authentifizierungslogik auf Browserebene. Sie müssen lediglich Benutzeraktionen auf der Zielseite mithilfe des integrierten Recorders skripten und ein Lademuster einrichten. So einfach ist das!
Der Test wird in einem echten Browser(Chrome- oder Edge-Optionen sind verfügbar) durchgeführt, um die tatsächliche Benutzererfahrung zu simulieren und realistische Testergebnisse zu liefern.
Weitere Informationen zu Auslastungstests für Webanwendungen finden Sie unter Erste Schritte mit der Einrichtung von Stresstests und konfigurieren der Webanwendungsaufgabe.