Hej Habr!
Ovo je nastavak mog
Ovog puta ću vam reći o svom iskustvu usaglašavanja JMeter-a i IBM MQ-a za srećno testiranje aplikacija na IBM WAS-u. Bio sam suočen sa takvim zadatkom, nije bilo lako. Želim pomoći u uštedi vremena za sve zainteresovane.
Uvod
O projektu: sabirnica podataka, mnogo xml poruka, tri područja razmjene (redovi, baza podataka, sistem datoteka), web servisi sa vlastitom logikom obrade poruka. Kako je projekat napredovao, ručno testiranje je postajalo sve teže. Apache JMeter je pozvan u pomoć - moćan i otvoren izvor, sa velikom zajednicom korisnika i prijateljskim interfejsom. Lakoća prilagođavanja gotove verzije omogućava vam da pokrijete sve slučajeve, a vodeći programer obećava da će pomoći samo u slučaju (pomoglo je) konačno potvrdio moj izbor.
Priprema početnog konteksta
Za interakciju s upraviteljem redova, potreban vam je početni kontekst. Ovdje postoji nekoliko tipova
Da biste ga kreirali, zgodno je koristiti MQ Explorer:
Slika 1: Dodavanje početnog konteksta
Odaberite vrstu datoteke konteksta i direktorij za pohranu .vezovi fajl koji će sadržavati opis JNDI objekata:
Slika 2: Odabir početnog tipa konteksta
Tada možete početi kreirati ove objekte. I počnite s tvornicom veza:
Slika 3: Kreiranje fabrike veza
Odaberite prijateljsko ime...
Slika 4: Odabir imena fabrike veze
... i tip Tvornica veza za redove:
Slika 5: Odabir fabričkog tipa veze
protokol - MQ klijent da biste mogli daljinski komunicirati sa MQ:
Slika 6: Odabir protokola tvornice veze
U sljedećem koraku možete odabrati postojeću tvornicu i kopirati dalje postavke iz nje. Kliknite sljedeći, ako ga nema:
Slika 7: Odabir postavki za postojeću tvornicu veza
U prozoru za odabir parametara dovoljno je navesti tri. Na kartici priključak naznačiti ime upravitelja redova i IP postolja s njegovom lokacijom (port 1414 ostaviti):
Slika 8: Konfiguriranje tvorničkih parametara veze
I na kartici kanali — kanal za povezivanje. Kliknite završiti završiti:
Slika 9: Završetak kreiranja tvornice veza
Sada kreirajmo vezu sa redom:
Slika 10: Kreiranje ciljnog objekta
Odaberimo prijateljsko ime (radije naznačim pravo ime reda) i ukucajmo red:
Slika 11: Odabir imena i tipa cilja
Po analogiji sa Slika 7 Možete kopirati postavke iz postojećeg reda čekanja. Također kliknite sljedeći, ako je prvi:
Slika 12: Odabir postavki za postojeći cilj
U prozoru postavki samo odaberite ime upravitelja i željeni red čekanja, kliknite završiti. Zatim ponovite potreban broj puta dok se ne kreiraju svi redovi potrebni za interakciju sa JMeterom:
Slika 13: Završetak kreiranja cilja
Priprema JMetera
Priprema JMetera uključuje dodavanje biblioteka potrebnih za interakciju sa MQ. Oni se nalaze u %wmq_home%/java/lib. Kopirajte ih u %jmeter_home%/lib/ext prije pokretanja JMeter-a.
- com.ibm.mq.commonservices.jar
- com.ibm.mq.headers.jar
- com.ibm.mq.jar
- com.ibm.mq.jmqi.jar
- com.ibm.mq.pcf.jar
- com.ibm.mqjms.jar
- dhbcore.jar
- fscontext.jar
- jms.jar
- jta.jar
- providerutil.jar
Predložena alternativna lista
Dolazi do greške NoClassDEfFoundError sa jms.jar, rješenje za koje sam pronašao
- com.ibm.mq.allclient.jar
- fscontext.jar
- javax.jms-api-2.0.jar
- providerutil.jar
Obje liste biblioteka uspješno rade sa JMeter 5.0 i IBM MQ 8.0.0.4.
Postavljanje plana testiranja
Potreban i dovoljan skup JMeter elemenata izgleda ovako:
Slika 14: Plan testiranja
Postoji pet varijabli u primjeru plana testiranja. Unatoč njihovom malom broju, preporučujem kreiranje zasebnih konfiguracijskih elemenata za različite vrste varijabli. Kako testovi rastu, to će znatno olakšati navigaciju. U ovom slučaju dobijamo dvije liste. Prvi sadrži parametre za povezivanje na MQ (vidi. 2 Figure и 4 Figure):
Slika 15: Opcije MQ veze
Drugi su imena ciljnih objekata koji se odnose na redove:
Slika 16: Parametrizovana imena redova
Sve što ostaje je konfigurirati JMS Publisher da učita testnu poruku u odlazni red:
Slika 17: Postavljanje JMS Publishera
I JMS Subscriber da pročita poruku iz dolaznog reda čekanja:
Slika 18: Konfiguriranje JMS pretplatnika
Ako je sve urađeno kako treba, rezultat izvršenja u listneru će biti ispunjen jarkim i veselim zelenim bojama.
zaključak
Namjerno sam izostavio pitanja rutiranja i administracije, to su prilično intimne i opsežne teme za zasebne publikacije.
Osim toga, postoji značajan dio nijansi u radu sa redovima, bazama podataka i datotekama, o kojima bih također želio govoriti odvojeno i detaljno.
Uštedite svoje vrijeme. I hvala na pažnji.
izvor: www.habr.com