Kako se koristi ForEach kontroler u JMeteru

ForEach kontroler u Jmetru ponavlja kroz niz varijabli.

U ovom uputstvu za JMeter koristit ćemo kontroler ForEach za petlju kroz JSON niz.

Postoje slučajevi kada moramo raščlaniti odgovor i iz njega izvući određene podatke. Na primjer, prilikom testiranja API-ja mogli bismo dobiti JSON odgovor koji može sadržavati JSON nizove.

Zatim, trebamo petlju proći kroz niz i za svaki element izvršiti radnju. U JMeteru možemo koristiti ForEach kontroler za iteraciju kroz JSON polje.

Kako se koristi JMeter ForEach kontroler

U ovom ćemo primjeru uputiti GET zahtjev resursu koji vraća JSON odgovor.



Odgovor sadrži Polje JSON objekata.

Za svaki objekt moramo izdvojiti URL koji možemo učiniti putem JSONPath-a.

JSONPath za dobivanje svih URL-ova u gornjem odgovoru je $.[*].url. Jednom kada raščlanimo JSON odgovor i izdvojimo URL-ove, tada imamo niz Stringova, u osnovi URL-ove.

Snimamo ovaj niz u varijablu koja se naziva url_array

Sada pretpostavimo da za svaki element niza String želimo uputiti zahtjev URL-u. U JMeteru se to radi pomoću kontrolera ForEach.

Da biste dodali kontroler ForEach u svoj testni plan, kliknite desnu tipku miša na Thread Group> Add> Logic Controller> ForEach Controller

ForEach kontroler zahtijeva dva parametra:

  • Prefiks ulazne varijable
  • Naziv izlazne varijable

The Prefiks ulazne varijable uzima ime varijable niza, u ovom primjeru, url_array . Za Naziv izlazne varijable , dodijelit ćemo varijablu, u ovom primjeru, url_index koju ćemo koristiti u sljedećem zahtjevu.

Zatim, u našim sljedećim zahtjevima, svaku vrijednost možemo izdvojiti pomoću ${url_index}

Ovo će sada petljati kroz svaki unos u JSON nizu i upućivati ​​HTTP zahtjeve na URL-ove.