Valdikliai „JMeter“: ciklas, paprastas, operacija, modulis, atsitiktinis

Turinys:

Anonim

Kas yra loginis valdiklis?

„Logic Controllers“ leidžia apibrėžti užklausos apdorojimo tvarką gijoje. Tai leidžia jums valdyti „kada“ siųsti vartotojo užklausą į interneto serverį. Pvz., Galite naudoti atsitiktinius valdiklius, jei norite atsitiktinai siųsti HTTP užklausas į serverį

Loginiai valdikliai nustato vartotojo užklausos vykdymo tvarką .

Kai kurie dažniausiai naudojami „Logic“ valdikliai yra žemiau:

Įrašymo valdiklis:

„JMeter“ gali įrašyti jūsų testavimo veiksmus; įrašymo valdiklis yra vietos rezervavimo priemonė šiems įrašymo veiksmams išsaugoti.

Paprastas valdiklis:

Paprastas valdiklis yra tik talpykla vartotojo prašymui.

Ciklo valdiklis:

Ciklo valdiklis priverčia vartotojo užklausą vykdyti nurodytą skaičių kartų arba paleisti amžinai, kaip parodyta paveikslėlyje:

Atsitiktinis valdiklis:

Atsitiktinis valdiklis priverčia visas vartotojo užklausas vykdyti atsitiktine tvarka kiekvienu ciklo laikotarpiu.

Pvz., Turite 3 naudotojo užklausas į svetainę http://www.google.com tokia tvarka:

  1. HTTP užklausa
  2. FTP užklausa
  3. JDBC prašymas

Šios 3 užklausos turėtų būti vykdomos 5 kartus. „Google“ serveriui „JMeter“ išsiųs 15 vartotojų užklausų.

Pagal eilės tvarką užklausos siunčiamos nuosekliai tokia tvarka:

HTTP užklausa -> FTP užklausa-> JDBC užklausa

kiekvienai kilpai.

Be atsitiktinių tam, prašymai siunčiami atsitiktinai,

FTP užklausa -> HTTP užklausa-> JDBC užklausa

Arba

JDBC užklausa -> FTP užklausa-> HTTP užklausa

Kiekvienai kilpai.

Modulio valdiklis:

„Module Controller“ tikslas yra pridėti „JMeter“ moduliškumą.

Bendra mintis yra ta, kad žiniatinklio programas sudaro nedideli funkcionalumo vienetai (ty Prisijungimas, Sukurti paskyrą, Atsijungimas ...). Ši funkcija gali būti saugoma paprastame valdiklyje kaip „moduliai“. Modulio valdiklis pasirinks, kurį modulį reikia paleisti.

Apsvarstykite šį scenarijų -

Norite imituoti:

  • 50 atsijungiančių vartotojų ,
  • 100 prisijungiančių vartotojų
  • 30 vartotojų ieško www.google.lt

JMeter galite naudoti norėdami sukurti 3 modulius. Kiekvienas modulis imituoja kiekvieną vartotojo veiklą: prisijungimą, atsijungimą ir paiešką.

Modulio valdiklis pasirenka, kurį modulį reikia paleisti.

Kiti svarbūs valdikliai:

  • Interleave Controller: pasiima ir paleidžia vieną vartotojo užklausą kiekvienoje gijos kilpoje.
  • „Runtime Controller“: kontroliuoja, kiek laiko jos vaikams leidžiama bėgioti.

Pavyzdžiui, jei „Runtime Controller“ nurodėte 10 sekundžių, „JMeter“ testą vykdys 10 sekundžių.

  • Operacijų valdiklis: matuoja bendrą laiką , kurio reikia bandymo vykdymui užbaigti
  • Įtraukti valdiklį: sukurtas naudoti išorinį bandymų planą. Šis valdiklis leidžia naudoti kelis „JMeter“ bandymų planus. Išsamiau žr. „JMeter Performance Testing“.

Ciklo valdiklio pavyzdys

Šiame skyriuje pateikiamos nuoseklios instrukcijos, kaip pridėti „ Loop Controller“ rinkinį prie dabartinio našumo bandymo plano.

Loop Controller leidžia mėginių ėmiklius paleisti tam tikrą skaičių kartų, be to, ciklo reikšmę nurodėte siūlų grupei. Pavyzdžiui, jei jūs

  • Pridėkite vieną HTTP užklausą prie ciklo valdiklio su kilpų skaičiumi 50
  • Konfigūruokite gijų grupės kilpų skaičių iki 2
  • Tada „JMeter“ iš viso išsiųs 50 * 2 = 100 HTTP užklausų.

Tai yra šio pavyzdžio gairės :

1 žingsnis) Konfigūruokite siūlų grupę

„ JMeter Performance Testing“ pamokoje pakartotinai naudojame 1, 2 žingsnius.

  1. Pridėti gijų grupę

Dešiniuoju pelės mygtuku spustelėkite testavimo planą ir pridėkite naują gijų grupę: Pridėti -> Gijos (Vartotojai) -> Gijų grupė

Tačiau „Thread Group“ valdymo skydelyje įveskite „Thread Properties“ taip:

Tai atliks vieną vartotojo užklausą žiniatinklio serveryje google.com ir vykdys 2 kartus.

  1. Pridėti JMeter elementus

Pridėkite HTTP užklausos numatytąjį adresą adresu www.google.com.

  1. Pridedamas ciklo valdiklis

Dešiniuoju pelės mygtuku spustelėkite „Thread Group“ -> Logic Controller -> Loop Controller

2 žingsnis) Konfigūruokite kilpos valdiklį

Pridėkite 50 reikšmę lauke Ciklo skaičius, kaip parodyta žemiau. Tai sukels vieną vartotojo užklausą žiniatinklio serveriui google.com, kad ji būtų vykdoma 50 kartų, be kilpos vertės = 2, kurią nurodėte aukščiau esančiai temų grupei. Taigi „JMeter“ iš viso išsiųs 2 * 50 = 100 HTTP užklausų.

Dešiniuoju pelės mygtuku spustelėkite „Loop Controller“, „Add -> Sampler -> HTTP request“

3 žingsnis) Pridėkite rodinių rezultatus lentelėje

Mes vėl panaudojame 2 veiksmą laikmačiu, kad lentelėje būtų įtraukti rodinio rezultatai

Taigi bandymo planas parodytas žemiau esančiame paveiksle

4 žingsnis. Paleiskite testą

Dabar grįžkite Peržiūrėti rezultatus lentelėje, spustelėkite meniu mygtuką Pradėti (Ctrl + R), kad paleistumėte bandymą

Kaip parodyta toliau pateiktame paveikslėlyje, „JMeter“ imituoja vieną vartotojo užklausą, kuri yra siunčiama 100 kartų, į žiniatinklio serverį http://www.google.com/. Testas sustabdomas po to, kai 100 kartų buvo išsiųsta vartotojo užklausa.

Problemų sprendimas:

  1. Jei susiduriate su problema vykdydami pirmiau pateiktą scenarijų ... atlikite šiuos veiksmus
  2. Patikrinkite, ar prisijungiate prie interneto per tarpinį serverį. Jei taip, pašalinkite tarpinį serverį.
  3. Atidarykite naują „Jmeter“ egzempliorių
  4. Atidarykite „ControllerTestPlan.jmx“ sistemoje „Jmeter“
  5. Spustelėkite Gijų grupė -> Peržiūrėti rezultatą lentelėje
  6. Atlikite testą