Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
+49 (0) 351/850 33-0

Lasttestgenerierung mit JMeter

Wie Sie mit der OpenSource Anwendung Apache JMeter Lasttests zur Performanceanalyse oder Systembewertung planen, ausführen und auswerten können, erfahren Sie in diesem Beitrag.

Lasttests sind essentiell für eine Performanceanalyse oder Systembewertung. Die Erstellung dieser ist jedoch ein zeitaufwändiges und mühsames Unterfangen. Ideal wäre es, wenn Lasttests von den Fachabteilungen selbst erstellt und somit ein Abbild des tatsächlichen Arbeitsverhaltens nachgebildet werden könnte.

Apache JMeter
Apache JMeter (Quelle: http://jmeter.apache.org/usermanual/build-web-test-plan.html)

Mit der OpenSource Anwendung Apache JMeter (http://jmeter.apache.org) kann man auf einfache Art und Weise Testpläne erstellen, ausführen und die Ergebnisse in zahlreichen unterschiedlichen Diagrammen/Graphen und Reports auswerten.

Graph für Antwortzeiten
Graph für Antwortzeiten (Quelle: http://jmeter.apache.org/usermanual/component_reference.html#Response_Time_Graph)

Es stehen eine Vielzahl von unterschiedlichen Lasttest Typen, sogenannte Sampler, zur Verfügung wie z.B.: Web (HTTP/HTTPS), FTP, JDBC, LDAP, Java, JUnit und viele weitere.

Um die Erstellung von umfangreichen Lasttestszenarien zu vereinfachen bietet JMeter die Möglichkeit als Proxy im Webbrowser eingebunden zu werden und so beim Durchführen der täglichen Arbeit die URL-Anfragen an das Zielsystem aufzuzeichnen. Diese Aufzeichnung kann dann beliebig abgespielt und so der Lasttest ausgeführt werden.

Dieser Blogpost beschreibt die notwendigen Konfigurationen in JMeter und Firefox, für die Erstellung eines aufgezeichneten Lasttests.

Konfiguration des JMeter Proxy und dessen Start

Nach dem Start von Apache JMeter richtet man zunächst eine neue Thread-Gruppe ein, in der die einzelnen HTTP Request Sampler aufgenommen werden können. Klicken Sie hierzu: TestPlan -> Hinzufügen -> Threads (User) -> Thread Group.

Zum Hinzufügen des HTTP Proxy Servers navigieren Sie zu: WorkBench -> Nicht-Test Elemente -> HTTP(S) Test Script Recorder

Nachdem der HTTP(S) Test Script Recorder hinzugefügt worden ist, muss dieser noch entsprechend konfiguriert werden, wählen Sie dazu folgende Einstellungen:

  • Global Settings -> Port -> 7000
  • Test-Plan Inhalte -> Ziel-Controller (Target-Controller) -> Testplan Thread-Gruppe
  • Test-Plan Inhalte -> Gruppierung: „Put each group in a new transaction controller“

Sind alle Einstellungen erfolgt, kann der Proxy zum Aufzeichnen gestartet werden. Klicken Sie dazu einfach den Button: „Start“.

Einbindung des JMeter Proxy im Firefox

Im Anschluss an den Start des JMeter Proxy muss dieser nun in dem Webbrowser eingebunden werden, sodass dieser die Aktivitäten im Browser aufzeichnet. Die Einbindung eines Proxies geschieht im Firefox in den Einstellungen. Navigieren Sie hierzu zu: „Erweitert“ => „Netzwerk“ und wählen Sie Radio-Button: „Manuelle Proxy-Konfiguration“. Geben Sie in den Formularfeldern die im Vorfeld definierten Proxyeinstellungen:

  • HTTP-Proxy: localhost
  • Port: 7000

Lasttestaufzeichnung

Die Vorbereitungen sind abgeschlossen, nun kann mit der Aufzeichnung begonnen werden. Dazu ist nichts weiter notwendig als mit dem Browser zu surfen. Alle getätigten Aktivitäten werden im Hintergrund von JMeter aufgezeichnet. Als Beispiel wird hier das Dashboard von Confluence aufgerufen. Als Ergebnis sieht man die folgenden Request-Aufzeichnungen:

Auf diesem Bild erkennt man sofort die Vorteile dieser Vorgehensweise. Es werden alle durchgeführten Aufrufe und Unteraufrufe zur Darstellung des Confluence Dashboards aufgezeichnet und so ein aufwändiges einzelnes Erfassen erspart. Somit ist die Basis für einen umfangreichen Lasttest geschaffen. Im Nachgang können diese Aufzeichnungen wie gewohnt angepasst, erweitert und die Eigenschaften des Lasttest, wie parallele Threads usw. generell verändert werden.

Weitere Informationen zu JMeter:

 

Wir sind da: Wir unterstützen Sie gerne umfangreich bei der Erstellung und Durchführung von Lasttests Ihrer Anwendungen. Kontaktieren Sie uns, wenn Sie Fragen zu unseren Angeboten und Leistungen haben oder weitere Hilfe benötigen.

Kommentar hinterlassen


Pin It on Pinterest