Aufzeichnung und Wiedergabe von Skripten in JMeter

In diesem Tutorial wird beschrieben, wie HTTP- oder HTTPS-Anfragen in JMeter mit dem HTTP(S)-Testskript-Recorder (oder HTTP-Proxy-Server in älteren Versionen von JMeter) aufgezeichnet werden können. Beginnen wir mit dem allerersten Schritt, d. h. j. indem Sie JMeter ausführen. Nach dem Start von JMeter sehen wir im linken Fenster zwei Steuerelemente:

- Testplan – Der Testplan ist der Bereich, in dem alle Skripte ausgeführt und gespeichert werden.
- Workbench – Workbench ist ein Bereich, den wir für einen temporären Zweck verwenden. Er dient im Wesentlichen dazu, Testelemente hinzuzufügen, die beim Laden von Skripten in JMeter helfen.
Aufzeichnung in JMeter
Sehen wir uns nun an, wie wir Skripte in JMeter aufzeichnen können:
- Fügen Sie eine Gruppe von Threads in den Testplan ein und benennen Sie die Gruppe von Threads nach der Aktion, die sie ausführen sollen, z. B. „LoginUsers“. Klicken Sie mit der rechten Maustaste auf Testplan -> klicken Sie auf Hinzufügen -> Threads (Benutzer) -> Thread-Gruppe.
- Fügen Sie einen logischen Controller (z.B. Transaction Controller) innerhalb der Thread-Gruppe hinzu. Klicken Sie mit der rechten Maustaste auf die Thread-Gruppe -> Klicken Sie auf Hinzufügen -> Logik-Controller -> Transaktions-Controller (vergessen Sie nicht, das Kontrollkästchen Übergeordnetes Beispiel generieren anzuklicken). Fügen Sie für jeden Schritt des Benutzerszenarios der erstellten Thread-Gruppe einen Transaktionscontroller hinzu, z. B. Transaktionsprüfung für „Benutzer startet Anwendung“, „Benutzer meldet sich mit gültigen Anmeldedaten an“, „Benutzer klickt auf Links in ungelesenen E-Mails“, „Benutzer meldet sich ab und verlässt die Anwendung“.
- Browser-Konfiguration für Proxy-Server-Einstellungen. Wir haben jetzt also ein Gerüst, in dem wir Skripte aufzeichnen und erstellen können.
Als Nächstes werden wir HTTP- oder HTTPS-Anfragen innerhalb der Transaktionscontroller protokollieren. Zu diesem Zweck müssen wir einen Proxy-Server in unserem Browser einrichten. Obwohl wir Anrufe mit jedem Browser aufzeichnen können, ist es empfehlenswert, Mozilla Firefox zu verwenden, da das Add-on „Firebug“ sehr wichtig ist, um zu überprüfen, ob alle Anrufe erfolgreich aufgezeichnet wurden oder nicht.
Die Schritte zum Einrichten eines Proxy-Servers in Mozilla sind wie folgt:
- Klicken Sie auf Extras -> Optionen
- Klicken Sie auf Erweitert und unter Erweitert auf die Registerkarte Netzwerk.
- Klicken Sie auf eine Einstellung, um das Fenster mit den Verbindungseinstellungen anzuzeigen.
- Klicken Sie auf die Schaltfläche Manuelle Proxy-Konfiguration
- Geben Sie nun 127.0.0.1 in das Textfeld HTTP-Proxy und einen beliebigen Port in das Textfeld Port ein, zum Beispiel 9001

- Die IP-Adresse, die wir in das HTTP-Proxy-Textfeld eingegeben haben, ist die Loopback-Adresse, d. h. die Software-Loopback-Schnittstelle des Rechners, auf dem wir gerade arbeiten, und der Port, den wir eingegeben haben, ist der Port, über den der gesamte Verkehr geleitet wird.
- Im Folgenden wird die JMeter-Konfiguration für Protokollierungsskripte beschrieben. Jetzt werden wir JMeter so konfigurieren, dass HTTP-Anfragen in Transaktionscontrollern protokolliert werden:
- Klicken Sie mit der rechten Maustaste auf WorkBench.
- Klicken Sie auf Hinzufügen-> Nicht-Testelemente-> HTTP(S) Testskript (HTTP Proxy Server in älteren Versionen von JMeter).
- Geben Sie den Port-Wert ein, den wir in das Feld Port unseres Browsers eingegeben haben.
- Wählen Sie im Dropdown-Menü Ziel-Controller den Transaktions-Controller aus, in dem Sie den Eintrag vornehmen möchten.
- Klicken Sie auf die Schaltfläche Start, um die Aufzeichnung zu starten.

Jetzt wird alles, was wir in unserem Browser tun, als http-Anfrage in dem von uns ausgewählten Transaktionscontroller gespeichert. Nehmen wir an, dass wir „User launch application“ als Ziel-Controller ausgewählt haben, dann klicken wir auf die Start-Schaltfläche von JMeter, gehen zu unserem Browser und starten die Anwendung. Auch hier gehen wir zu JMeter und prüfen, ob im Transaktionscontroller „User launch application“ Anfragen protokolliert sind oder nicht. Wenn ja, klicken wir auf die Schaltfläche „Stop“, wählen den nächsten Transaktionscontroller aus dem Dropdown-Menü des Zielcontrollers aus (der Benutzer gibt gültige Anmeldedaten ein und klickt auf die Schaltfläche „Login“), klicken auf die Schaltfläche „Run“, navigieren zum Browser, geben die Anmeldedaten ein und klicken auf die Schaltfläche „Login“. Gehen Sie zu JMeter und klicken Sie auf die Schaltfläche „Stopp“. Führen Sie diese Schritte für jeden Transaktionscontroller durch.
Damit ist der Teil der Aufzeichnung abgeschlossen. Als Nächstes müssen wir unserem Testplan Zuhörer hinzufügen, um die Testergebnisse zu interpretieren. Klicken Sie dazu mit der rechten Maustaste auf Testplan-> Hinzufügen-> Listener. Es wird eine Liste aller verfügbaren Listener angezeigt. Verwenden Sie in der Zwischenzeit die Listener Aggregate graph und View Result Tree.
Jetzt können wir das Skript durch Drücken von Strg+R oder durch Klicken auf das Play-Symbol ausführen. Oben rechts erscheint ein Symbol, das anzeigt, dass der Test läuft. Wenn Sie fertig sind, überprüfen Sie die Ergebnisse und Diagramme in den Zuhörern. Einige Transaktionscontroller können fehlschlagen (überprüfen Sie dies in der Ergebnisstruktur der Ansicht – fehlgeschlagene Anfragen sind rot markiert), da noch viele Skripte im Testplan ausgeführt werden müssen.
Hier ging es also um die Aufzeichnung und Wiedergabe in JMeter. In zukünftigen Beiträgen werden wir uns mit „Parametrisierung und Korrelation“ beschäftigen, die das Herzstück der Skripterstellung sind.