Was ist Element in JMeter?
Die verschiedenen Komponenten von JMeter werden als Elemente bezeichnet. Jedes Element ist für einen bestimmten Zweck konzipiert.
Die folgende Abbildung zeigt einige allgemeine Elemente in JMeter.
Das Studium aller Komponenten auf einmal ist eine Einladung zu Verwirrung und Langeweile. Hier werden die wichtigsten Komponenten erläutert, bevor Sie mit dem Testen in JMeter beginnen können.
Verbleibende Komponenten werden so besprochen, wie sie in den nachfolgenden Tutorials verwendet werden. Die in diesem Tutorial behandelten Elemente sind
- Thread-Gruppe
- Sampler
- Zuhörer
- Aufbau
Thread-Gruppe
Thread-Gruppen ist eine Sammlung von Threads. Jeder Thread repräsentiert einen Benutzer, der die zu testende Anwendung verwendet. Grundsätzlich simuliert jeder Thread eine echte Benutzeranforderung an den Server.
Mit den Steuerelementen für eine Thread-Gruppe können Sie die Anzahl der Threads für jede Gruppe festlegen.
Wenn Sie beispielsweise die Anzahl der Threads auf 100 festlegen; JMeter erstellt und simuliert 100 Benutzeranforderungen an den zu testenden Server
Sampler
Wie wir bereits wissen, unterstützt JMeter das Testen von HTTP, FTP, JDBC und vielen anderen Protokollen.
Wir wissen bereits, dass Thread-Gruppen Benutzeranforderungen an den Server simulieren
Aber woher weiß eine Thread-Gruppe, welche Art von Anforderungen (HTTP, FTP usw.) sie stellen muss?
Die Antwort lautet Sampler
Die Benutzeranforderung kann FTP-Anforderung, HTTP-Anforderung, JDBC-Anforderung usw. sein.
FTP-Anfrage:
Stellen Sie sich vor, Sie möchten einen FTP-Server auf Leistung testen. Sie können einen FTP-Anforderungs-Sampler in JMeter verwenden, um diese Aufgabe auszuführen. Mit diesem Controller können Sie eine FTP-Anforderung zum Herunterladen von Dateien oder zum Hochladen von Dateien an einen FTP-Server senden.
Wenn Sie beispielsweise eine Datei "Test.txt" von einem zu testenden FTP-Server herunterladen möchten, müssen Sie einige Parameter in JMeter wie in der folgenden Abbildung konfigurieren
JMeter sendet einen FTP-Befehl an den FTP-Server ftp.example.com und lädt dann eine Datei Test.txt von diesem Server herunter.
HTTP-Anfrage:
Mit diesem Sampler können Sie eine HTTP / HTTPS-Anforderung an einen Webserver senden.
Betrachten Sie das folgende Beispiel. JMeter sendet eine HTTP-Anfrage an die Google-Website und ruft HTML-Dateien oder Bilder von dieser Website ab.
Im Tutorial JMeter Performance Testing werden wir mehr über diese HTTP-Anforderung erklären.
JDBC-Anfrage:
Mit diesem Sampler können Sie Datenbankleistungstests ausführen. Es sendet eine JDBC-Anforderung (eine SQL-Abfrage) an eine Datenbank.
Auf einem Datenbankserver ist beispielsweise ein Feld test_result in einem Tabellennamen test_tbl gespeichert. Sie möchten diese Daten vom Datenbankserver abfragen. Sie können JMeter so konfigurieren, dass eine SQL-Abfrage an diesen Server gesendet wird, um Daten abzurufen.
BSF-Sampler:
Mit diesem Sampler können Sie einen Sampler mit einer BSF-Skriptsprache schreiben.
Hier ist ein Beispiel für einen BSF-Sampler in JMeter
Access Log Sampler:
Mit diesem Sampler können Sie Zugriffsprotokolle lesen und HTTP-Anforderungen generieren. Das Protokoll kann Bild, HTML, CSS ... sein.
SMTP-Sampler:
Wenn Sie einen Mailserver testen möchten, können Sie den SMTP-Sampler verwenden. Dieser Sampler wird zum Senden von E-Mail-Nachrichten mithilfe des SMTP-Protokolls verwendet.
Zuhörer
Listener: Zeigt die Ergebnisse der Testausführung an. Sie können Ergebnisse in einem anderen Format anzeigen, z. B. in einem Baum, einer Tabelle, einem Diagramm oder einer Protokolldatei
Listener für Diagrammergebnisse zeigen die Serverantwortzeiten in einem Diagramm an
Ergebnisbaum anzeigen zeigt die Ergebnisse der Benutzeranforderung im grundlegenden HTML-Format an
Das Tabellenergebnis zeigt eine Zusammenfassung eines Testergebnisses im Tabellenformat
Protokoll zeigt Zusammenfassung der Testergebnisse in der Textdatei
Konfigurationselemente
Richten Sie Standardeinstellungen und Variablen für die spätere Verwendung durch Sampler ein.
Die folgende Abbildung zeigt einige häufig verwendete Konfigurationselemente in JMeter
CSV-Datensatzkonfiguration:
Angenommen, Sie möchten eine Website für 100 Benutzer testen, die sich mit unterschiedlichen Anmeldeinformationen anmelden. Sie müssen das Skript nicht 100 Mal aufzeichnen! Sie können das Skript parametrisieren, um verschiedene Anmeldeinformationen einzugeben. Diese Anmeldeinformationen (z. B. Benutzername, Passwort) können in einer Textdatei gespeichert werden. JMeter verfügt über ein Element, mit dem Sie verschiedene Parameter aus dieser Textdatei lesen können. Es ist "CSV Data Set Config", mit der Zeilen aus einer Datei gelesen und in Variablen aufgeteilt werden.
Dies ist ein Beispiel für CSV-Daten. Es ist eine Textdatei, die Benutzer und Passwort zum Anmelden Ihrer Zielwebsite enthält
HTTP-Cookie-Manager
Lassen Sie uns dies anhand eines Beispiels verstehen -
Sie haben Ihren Browser (Firefox, IE… usw.) zum Durchsuchen von www.google.com verwendet
Sie melden sich mit Ihrem Benutzer und Passwort an.
Ihr Benutzername und Ihr Passwort werden als Cookies auf Ihrem Computer gespeichert.
Wenn Sie das nächste Mal www.google.com besuchen, müssen Sie sich nicht erneut anmelden, da Ihr Browser Ihre Cookies als Benutzerdaten zum Anmelden verwendet.
HTTP Cookie Manager hat auch die gleiche Funktion wie ein Webbrowser. Wenn Sie eine HTTP-Anfrage haben und die Antwort ein Cookie enthält, speichert der Cookie-Manager dieses Cookie automatisch und verwendet es für alle zukünftigen Anfragen an diese bestimmte Website.
HTTP-Anforderungsstandard
Mit diesem Element können Sie Standardwerte festlegen, die Ihre HTTP-Anforderungscontroller verwenden.
Zum Beispiel,
Sie senden 100 HTTP-Anfragen an den Server google.com
Für all diese 100 Anfragen müssten Sie den Servernamen = google.com manuell eingeben
Stattdessen können Sie eine einzelne HTTP-Anforderung standardmäßig mit dem Feld "Servername oder IP" = google.com hinzufügen
Sie müssen nicht 100 Mal tippen!
Dieses Element wird im Tutorial JMeter Performance Testing ausführlich erläutert
Login-Konfigurationselement
Mit dem Login Config Element können Sie Benutzernamen- und Passworteinstellungen in Samplern hinzufügen oder überschreiben.
Sie möchten beispielsweise die Anmeldung eines Benutzers auf der Website www.facebook.com mit Benutzer und Kennwort simulieren. Mit dem Login-Konfigurationselement können Sie diese Benutzer- und Kennworteinstellung zu einer Benutzeranforderung hinzufügen
Das Login-Konfigurationselement im Vergleich zur CSV-Datenkonfiguration
Login-Konfigurationselement |
CSV-Datenkonfiguration |
---|---|
Wird verwendet, um die Anmeldung eines Benutzers zu simulieren |
Wird verwendet, um die Anmeldung mehrerer Benutzer zu simulieren |
Nur für Anmeldeparameter geeignet (Benutzer und Passwort) |
Geeignet für eine große Anzahl von Parametern |