U ovom vodiču za JMeter objašnjavamo kako poslati jednu ili više JSON datoteka u tijelu HTTP zahtjeva.
Kada testiramo RESTful API, obično šaljemo POST zahtjev REST API-ju u JSON formatu. Parametri zahtjeva u JSON formatu moraju se poslati u tijelu HTTP zahtjeva.
Prvo, trebat će vam tekstualna datoteka s JSON zahtjevom. Ovu datoteku ćemo koristiti za slanje na naš REST API u tijelu zahtjeva POST.
Pretpostavimo da se datoteka nalazi u /Users/testing-excellence/Perf/blog/json_request.txt
Naša JMeter skripta izgledat će otprilike ovako:
Drugim riječima, trebamo odabrati Body Data u HTTP Sampler-u i umetnuti sljedeći redak koda
${__FileToString(/Users/testing-excellence/Perf/blog/${__eval(${json_file})}.txt,,)}
Očito je da će put na vašem stroju biti drugačiji.
Gornji redak uzima sadržaj datoteke koja se zove json_file.txt i šalje sadržaj u tijelu zahtjeva REST API-ju.
Kako se JMeter uglavnom koristi za testiranje performansi i opterećenja, možemo testirati naš REST API slanjem višestrukih JSON zahtjeva.
Da bismo to učinili, koristimo JMetrov CVS element konfiguracije skupa podataka.
U CSV datoteci imamo stupac s imenima datoteka JSON zahtjeva. Ova CSV datoteka služi kao referenca na JSON datoteke.
Pretpostavimo da imamo 10 JSON datoteka, s imenima datoteka 100.txt, 101.txt, 103.txt ... .110.txt
A CSV datoteka će izgledati ovako:
Zatim u JMeteru u naš plan testiranja dodajemo element CSV Config skupa podataka
Varijabla je JSON_FILE koja uzima vrijednosti 100, 101, 102, itd ... iz CSV datoteke.
Tada ovu referencu trebamo uputiti u naš __FileToString()
JMeter funkcija, tj.
Kada izvršimo ovaj JMeter test, on će se provući kroz CVS, uzimajući svako ime datoteke i izdvajajući sadržaj svake datoteke za slanje kao JSON u tijelu zahtjeva.