26. Apache JMeter HTTP(S)-Testskript-Recorder ¶
Dieses Tutorial versucht, die genauen Schritte zum Aufzeichnen von HTTP/HTTPS zu erklären. Für diejenigen, die neu bei JMeter sind, besteht eine einfache Möglichkeit zum Erstellen eines Testplans darin, den Rekorder zu verwenden.
26.1 JMeter-Konfiguration ¶
Seit JMeter 2.10 wurde die Aufzeichnung verbessert, um eingebettete Ressourcen und die Erstellung von Zertifikaten im laufenden Betrieb besser zu handhaben. Um diese Funktionen zu aktivieren, verwendet JMeter das Keytool- Dienstprogramm (verfügbar in JRE/JDK), sodass Sie sicherstellen müssen, dass Ihre Konfiguration korrekt ist. Lesen Sie diese Wiki-Seite, bevor Sie beginnen.
26.2 Grundlegende Anweisungen ¶
- Gehen Sie zu JMETER_HOME/bin und starten Sie JMeter mit jmeterw.bat unter Windows und jmeter.sh unter Linux/Unix
- Wählen Sie Vorlagen… in der Menüleiste
- Wählen Sie Aufzeichnungsvorlage in der Liste aus
- Ein vollständiger Testplan wird generiert
- Im Element HTTP Request Defaults :
- Servername oder IP
- Geben Sie example.com ein
- Weg
- freilassen
- Kehren Sie zu HTTP(S) Test Script Recorder zurück und klicken Sie oben auf die Schaltfläche Start .
Dadurch wird der JMeter-Proxyserver gestartet, der zum Abfangen der Browseranforderungen verwendet wird. Eine Datei namens ApacheJMeterTemporaryRootCA.crt wird im Ordner JMETER_HOME/bin generiert . Installieren Sie dieses Zertifikat in Ihrem Browser. Wenn Sie nicht wissen, wie es geht, lesen Sie Installieren des JMeter-CA-Zertifikats für die HTTPS-Aufzeichnung
26.3 Konfigurieren Sie Ihren Browser für die Verwendung des JMeter-Proxys ¶
Zu diesem Zeitpunkt wird der Proxy von JMeter ausgeführt. Für diese Übung verwenden wir Iceweasel/Firefox, um einige Seiten auf der JMeter-Website anzuzeigen.
- Starten Sie Iceweasel/Firefox, aber schließen Sie JMeter nicht.
- Klicken Sie in der Symbolleiste auf about:preferences#advanced als URL ein). Dies sollte die Optionen anzeigen. (oder oder geben Sie
- Wählen Sie die Registerkarte Erweitert und die Registerkarte Netzwerk
- Klicken Sie oben auf die Schaltfläche Einstellungen .
- Aktivieren Sie im neuen Popup-Fenster Manuelle Proxy-Konfiguration . Die Adress- und Portfelder sollten jetzt aktiviert sein.
- Adresse
- Geben Sie localhost oder die IP-Adresse Ihres Systems ein
- Hafen
- Geben Sie 8888 ein .
- Aktivieren Sie Diesen Proxy-Server für alle Protokolle verwenden
- Klicken Sie auf die Schaltfläche OK . Dies sollte Sie zum Browser zurückbringen
26.4 Zeichnen Sie Ihre Navigation auf ¶
- Geben Sie in Ihrem Browser oben in der Adressleiste http://example.com/index.html ein (ersetzen Sie example.com durch die Adresse Ihrer Website). und drücken Sie die Eingabetaste .
- Klicken Sie auf ein paar Links auf den Seiten Ihrer Website.
- Schließen Sie Ihren Browser und rufen Sie das JMeter-Fenster auf.
Erweitern Sie die Thread-Gruppe und es sollten mehrere Sampler vorhanden sein. An dieser Stelle kann der Testplan unverändert gespeichert werden.
In diesem Beispiel gibt es keine Standardanforderungsparameter. Wenn ein bestimmter Anforderungsparameter von allen Seiten benötigt wird, würde man die Einträge in den Anforderungsvorgaben hinzufügen.
- Wählen Sie Thread Group und ändern Sie einige Standardeinstellungen:
- Anzahl der Threads (Benutzer)
- 5 eingeben
- Hochlaufzeit (in Sekunden)
- verändere dich nicht
- Schleifenanzahl
- 100 eingeben
26.5 Das Skript validieren ¶
Jetzt müssen wir das Skript validieren, bevor wir unseren Testplan ausführen. Speichern Sie den Testplan.
Klicken Sie mit der rechten Maustaste auf die Thread Group
Überprüfen Sie mit dem Element View Results Tree , ob alles in Ordnung ist.
26.6 Variabilisieren und Korrelieren des Skripts ¶
In einigen Skripten müssen wir Folgendes tun:
- Einige Eingaben variieren (Login, Passwort, Suchbegriffe, …)
- Einige Daten (Sitzungsvariable, …) zwischen zwei Anfragen korrelieren
Zur Variabilisierung können wir verwenden:
- CSV Data Set Config zum Abrufen von Eingabedaten aus der CSV-Datei
- JMeter-Funktionen wie __counter , __time , …
- usw.
Um zu korrelieren, können wir Daten aus einer Anfrage mit Postprozessoren wie JSON Extractor , Regular Expression Extractor , … abrufen und in eine andere Anfrage einfügen.
Um zu korrelierende Daten zu finden, verwenden Sie am einfachsten die Suchfunktion in View Results Tree .
26.7 Test starten ¶
An diesem Punkt sind wir bereit, unseren Testplan auszuführen und zu sehen, was passiert. Wenn Sie bereit sind, den Test auszuführen, gibt es zwei Möglichkeiten:
- Mit der gui ist es aber nicht zu empfehlen großen lasttest zu machen.
- Mit der Kommandozeile.
Lösung 1, mit der GUI, aber nur während der Debug-Phase, verwenden Sie den CLI-Modus (ohne GUI) für Ihren Auslastungstest.
Sie Strg + R
oder verwenden Sie die Tastatur und drückenBevor Sie den Test starten, fügen Sie ein Summary Report - Element hinzu und wählen Sie es aus. Während der Test ausgeführt wird, ändern sich die Statistiken, bis der Test abgeschlossen ist. Am Ende des Tests sollte der zusammenfassende Bericht so aussehen.
Während der Test läuft, sollte in der oberen rechten Ecke ein grüner Kreis zu sehen sein. Wenn der Test abgeschlossen ist, sollte der Kreis grau sein.
Lösung 2, verwenden Sie in der Befehlszeile jmeter -n -t [jmx-Datei] -l [Ergebnisdatei] -e -o [Pfad zum Ausgabeordner]
Am Ende des Tests wird ein HTML-Bericht generiert und in [Pfad zum Ausgabeordner] verfügbar sein, der in der Befehlszeile verwendet wird.