Sziasztok!

 

Még csak most ismerkedek a JMeterrel, és belefutottam egy problémába, amire nem találom a választ.

A tesztelendő felállás az, hogy van egy web alkalmazás, Tomcaten fut, de gondolom ez most lényegtelen, és van ~400 célgép, amik 3 percenként küldenek egy-egy HTTP requestet az alkalmazásnak.

Odáig eljutottam, hogy létrehoztam egy thread groupot, aminek beállítottam a userek számát 400-ra, egy CSV-be felvettem a 400 gépazonosítót, és a thread groupban felvett HTTP Request ebből szépen sorban ki is veszi. A Ramp-Up Periodot beállítottam 3 percre, és az első ciklus le is fut szépen, 3 perc alatt minden gép egyszer bejelentkezik. Ezt szeretném ismételni, de ha a thread group loop count-ját beállítom 1-nél nagyobbra, az nem jó, mert ez nem a teljes thread groupra vonatkozik, hanem az éppen létrehozott threadre, és a threadek gyorsan ellövik a loop countban beállított számú kérést, amint létrejöttek. Lehet valahogy a threadnek szólni, hogy a requestek között várjon valamennyi ideig? Vagy a thread groupot kívülről ciklusba tenni, hogy ha véget ért, akkor kezdje elölről?

Próbáltam a requesthez timert adni, de az abban lévő delay time az a thread létrehozása utáni várakozási időt jelenti az első request előtt, nem pedig a ciklikus requestek közötti időt.

A dokumentumban nem találtam egyelőre semmit, se a stackoverflow-n. A kívánt működést úgy tudnám emulálni, hogy a thread groupot duplikálom annyiszor, ahányszor szeretném a 3 perces ciklust futtatni, és a Test Plan-ben beállítom a Run Thread Groups consecutively opciót, de szeretnék több órás ciklusokat is futtatni, és az nem tetszik, hogy duplikáljak 100-150 thread groupot.

Tud valaki megoldást erre a problémára, vagy a JMeter erre nem lesz jó?

 

Csabóca