BeanShell Scripting v JMeter

BeanShell Scripting v JMeter
3 MIN
22 feb 2024

BeanShell je ľahký skriptovací jazyk. Má syntax podobnú jazyku Java a ako skriptovací jazyk je interpretovaný namiesto kompilovaného jazyka.

Skriptovanie BeanShell v príklade JMeter

V tomto príklade otvoríme vyhľadávač Bing, napíšeme hľadaný výraz a z výsledkov vyhľadávania získame 5 najlepších odkazov.

Krok.1. Dúfam, že poznáte bežné skriptovanie JMeter, takže nebudeme zachádzať do hĺbky a predpokladáme, že skript na otvorenie bingu a napísanie hľadaného výrazu je už naskriptovaný. Ako je znázornené na obrázku nižšie, máme kontrolér transakcií (transaction controller) „Spustiť bing“ a „Získať všetky odkazy na výsledky“. Tieto transakčné kontroléry budú mať svoje príslušné požiadavky HTTP.

Krok.2. Najprv spustíme skript a získame textovú odpoveď v strome výsledkov zobrazenia a vytvoríme regulárny výraz na získanie odkazu, viac informácií o extrakcii regulárnych výrazov nájdete v našom príspevku o Korelácii v JMeter.

Krok.3. Ďalším krokom bude vytvorenie Regexp Extractor, ktorý bude pridaný ako potomok (child) HTTP požiadavky v rámci kontroléra „Získať všetky odkazy na výsledky“.

Krok.4. Pridajte prvok BeanShell Script ako potomka a napíšte nasledujúci kód:

keyword = „buddha quotes“;

links = vars.get(„links“);

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

p = new PrintStream(f); 

this.interpreter.setOut(p);

print(keyword +  „,“  + links);

f.close();

Pozrite si obrázok nižšie pre porovnanie:

Kód je zrozumiteľný a vytvorí súbor result.csv s odkazmi na kľúčové slovo „buddha quotes“. Takisto môžeme kľúčové slovo parametrizovať a urobiť skript všeobecnejším a dynamickejším.