JMeter Elemente: Thread-Gruppe, Sampler, Listener, Konfiguration
Was ist Element in JMeter?
Die verschiedenen Komponenten von JMeter werden Elemente genannt. Jedes Element ist für einen bestimmten Zweck konzipiert.
Die folgende Abbildung zeigt einige gemeinsame Elemente in JMeter.
Das Studium aller Komponenten auf einmal ruft Verwirrung und Langeweile hervor. Hier besprechen wir die wichtigsten Komponenten, bevor Sie beginnen können Testen in JMeter.
Die übrigen Komponenten werden in den folgenden Tutorials so besprochen, wie sie verwendet werden. Die in diesem Tutorial behandelten Elemente sind
Thread-Gruppe
Thread-Gruppen sind eine Sammlung von Threads. Jeder Thread stellt einen Benutzer dar, der die zu testende Anwendung verwendet. Grundsätzlich simuliert jeder Thread eine echte Benutzeranfrage 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 Benutzeranfragen an den zu testenden Server
Sampler
Wie wir bereits wissen JMeter unterstützt das Testen von HTTP, FTP, JDBC und vielen anderen Protokollen.
Wir wissen bereits, dass Thread-Gruppen Benutzeranfragen an den Server simulieren
Aber woher weiß eine Thread-Gruppe, welche Art von Anfragen (HTTP, FTP usw.) sie stellen muss?
Die Antwort ist Sampler
Die Benutzeranfrage kann eine FTP-Anfrage, eine HTTP-Anfrage, eine JDBC-Anfrage usw. sein.
FTP-Anfrage
Stellen Sie sich vor, Sie möchten die Leistung eines FTP-Servers testen. Sie können einen FTP-Anfrage-Sampler verwenden JMeter um diese Aufgabe zu erledigen. Mit diesem Controller können Sie eine FTP-Anfrage „Datei herunterladen“ oder „Datei hochladen“ 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 konfigurieren JMeter wie in der Abbildung unten
JMeter sendet einen FTP-Befehl an den FTP-Server ftp.example.com
, und laden Sie dann eine Datei Test.txt von diesem Server herunter.
HTTP-Anfrage
Mit diesem Sampler können Sie eine HTTP/HTTPS-Anfrage 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, wir werden mehr über diese HTTP-Anfrage erklären.
JDBC-Anfrage
Mit diesem Sampler können Sie Database ausführen Performance Testing. Es sendet eine JDBC-Anfrage (eine SQL-Abfrage) an eine Datenbank.
Beispielsweise ist auf einem Datenbankserver ein Feld test_result in einer Tabelle mit dem Namen test_tbl gespeichert. Sie möchten diese Daten vom Datenbankserver abfragen; Sie können konfigurieren JMeter senden a SQL Abfrage an diesen Server, um Daten abzurufen.
BSF-Sampler
Mit diesem Sampler können Sie einen Sampler mit a schreiben BSF Skriptsprache.
Hier ist ein Beispiel für BSF Sampler in JMeter
Zugriff auf Log Sampler
Mit diesem Sampler können Sie Zugriffsprotokolle lesen und HTTP-Anfragen generieren. Das Protokoll könnte ein Bild, HTML, CSS usw. sein.
SMTP-Sampler
Wenn Sie einen Mailserver testen möchten, können Sie SMTP Sampler verwenden. Dieser Sampler wird zum Senden von E-Mail-Nachrichten mithilfe des SMTP-Protokolls verwendet.
Zuhörer
Zuhörer: Zeigt die Ergebnisse der Testausführung an. Sie können Ergebnisse in einem anderen Format anzeigen, beispielsweise als Baum, Tabelle, Diagramm oder Protokolldatei
Diagrammergebnis-Listener zeigen die Serverantwortzeiten in einem Diagramm an
Ergebnisbaum anzeigen zeigt die Ergebnisse der Benutzeranfrage im einfachen HTML-Format an
Tabellenergebnis zeigt eine Zusammenfassung eines Testergebnisses im Tabellenformat
Das Protokoll zeigt eine Zusammenfassung der Testergebnisse in der Textdatei an
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 unterschiedliche 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 handelt sich um „CSV Data Set Config“, mit dem Zeilen aus einer Datei gelesen und in Variablen aufgeteilt werden.
Dies ist ein Beispiel für CSV-Daten. Es handelt sich um eine Textdatei, die Benutzer und Passwort zum Anmelden auf Ihrer Zielwebsite enthält
HTTP-Cookie-Manager
Lassen Sie uns dies anhand eines Beispiels verstehen –
Sie haben Ihren Browser verwendet (Firefox, IE usw.) zum Durchsuchen www.google.com
Sie melden sich mit Ihrem Benutzernamen und Passwort an.
Ihr Benutzername und Ihr Passwort werden als Cookies auf Ihrem Computer gespeichert.
Das nächste Mal, wenn Sie uns besuchen www.google.comSie müssen sich nicht erneut anmelden, da Ihr Browser Ihre Cookies als Benutzerdaten für die Anmeldung verwendet.
HTTP Cookie Manager verfügt außerdem über dieselbe 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-Anfragestandard
Mit diesem Element können Sie Standardwerte festlegen, die Ihre HTTP-Request-Controller verwenden.
Zum Beispiel,
Sie senden 100 HTTP-Anfragen an den Server google.com
Für alle diese 100 Anfragen müssten Sie den Servernamen = google.com manuell eingeben
Stattdessen könnten Sie eine einzelne HTTP-Anforderung mit dem Feld „Servername oder IP“ = google.com hinzufügen
Sie müssen nicht 100 Mal tippen!
Dieses Element wird im Tutorial ausführlich erklärt JMeter Performance Testing
Login-Konfigurationselement
Mit dem Login-Konfigurationselement können Sie Benutzernamen- und Passworteinstellungen in Samplern hinzufügen oder überschreiben.
Sie möchten beispielsweise die Anmeldung eines einzelnen Benutzers auf einer Website simulieren www.facebook.com mit Benutzer und Passwort. Sie können das Login-Konfigurationselement verwenden, um diese Benutzer- und Passworteinstellung in einer Benutzeranfrage hinzuzufügen
Das Login-Konfigurationselement im Vergleich zur CSV-Datenkonfiguration
Login-Konfigurationselement | CSV-Datenkonfiguration |
---|---|
Wird verwendet, um eine Benutzeranmeldung zu simulieren | Wird verwendet, um die Anmeldung mehrerer Benutzer zu simulieren |
Nur für Anmeldeparameter (Benutzer und Passwort) geeignet. | Geeignet für große Parameterzahlen |