BeanShell-Skripterstellung in JMeter

BeanShell-Skripterstellung in JMeter
MIN
22 Feb. 2024

BeanShell ist eine leichtgewichtige Skriptsprache. Sie hat eine ähnliche Syntax wie Java und wird als Skriptsprache interpretiert und nicht als kompilierte Sprache.

Skripting der BeanShell im JMeter-Beispiel

In diesem Beispiel öffnen wir die Bing-Suchmaschine, geben einen Suchbegriff ein und erhalten die ersten 5 Links aus den Suchergebnissen.

Schritt.1. Ich hoffe, Sie sind mit der gängigen JMeter-Skripterstellung vertraut. Wir gehen daher nicht weiter in die Tiefe und gehen davon aus, dass das Skript zum Öffnen von Bingo und zur Eingabe des Suchbegriffs bereits in einem Skript enthalten ist. Wie in der Abbildung unten gezeigt, haben wir einen Transaktionscontroller „Run bing“ und „Get all links to results“. Diese Transaktionscontroller haben ihre eigenen HTTP-Anforderungen.

Schritt.2. Zuerst führen wir das Skript aus und holen uns die Textantwort im Ergebnisbaum und erstellen einen regulären Ausdruck, um die Referenz zu erhalten. Weitere Informationen zum Extrahieren regulärer Ausdrücke finden Sie in unserem Beitrag über Korrelation in JMeter.

Schritt.3. Der nächste Schritt besteht darin, einen Regexp-Extraktor zu erstellen, der als untergeordnetes Element der HTTP-Anforderung innerhalb des Controllers „Get all links to results“ hinzugefügt wird.

Schritt.4. Fügen Sie das Element BeanShell Script als untergeordnetes Element hinzu und schreiben Sie den folgenden Code:

Stichwort = „Buddha-Zitate“;

links = vars.get(„links“);

f = new FileOutputStream(„result.csv“,true);

p = new PrintStream(f);

this.interpreter.setOut(p);

print(keyword + „,“ + links);

f.close();

Siehe Abbildung unten zum Vergleich:

Der Code ist einfach zu verstehen und erzeugt eine result.csv-Datei mit Verweisen auf das Schlüsselwort „buddha quotes“. Wir können das Schlüsselwort auch parametrisieren und das Skript generischer und dynamischer gestalten.