IBM MQ i JMeter: Prvi kontakt

Hej Habr!

Ovo je nastavak mog prethodna publikacija a ujedno i remake članka Automatsko testiranje usluga koristeći MQ protokol koristeći JMeter.

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.

IBM MQ i JMeter: Prvi kontakt

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 ovdje možete pročitati više.
Da biste ga kreirali, zgodno je koristiti MQ Explorer:

IBM MQ i JMeter: Prvi kontakt
Slika 1: Dodavanje početnog konteksta

Odaberite vrstu datoteke konteksta i direktorij za pohranu .vezovi fajl koji će sadržavati opis JNDI objekata:

IBM MQ i JMeter: Prvi kontakt
Slika 2: Odabir početnog tipa konteksta

Tada možete početi kreirati ove objekte. I počnite s tvornicom veza:

IBM MQ i JMeter: Prvi kontakt
Slika 3: Kreiranje fabrike veza

Odaberite prijateljsko ime...

IBM MQ i JMeter: Prvi kontakt
Slika 4: Odabir imena fabrike veze

... i tip Tvornica veza za redove:

IBM MQ i JMeter: Prvi kontakt
Slika 5: Odabir fabričkog tipa veze

protokol - MQ klijent da biste mogli daljinski komunicirati sa MQ:

IBM MQ i JMeter: Prvi kontakt
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:

IBM MQ i JMeter: Prvi kontakt
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):

IBM MQ i JMeter: Prvi kontakt
Slika 8: Konfiguriranje tvorničkih parametara veze

I na kartici kanali — kanal za povezivanje. Kliknite završiti završiti:

IBM MQ i JMeter: Prvi kontakt
Slika 9: Završetak kreiranja tvornice veza

Sada kreirajmo vezu sa redom:

IBM MQ i JMeter: Prvi kontakt
Slika 10: Kreiranje ciljnog objekta

Odaberimo prijateljsko ime (radije naznačim pravo ime reda) i ukucajmo red:

IBM MQ i JMeter: Prvi kontakt
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:

IBM MQ i JMeter: Prvi kontakt
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:

IBM MQ i JMeter: Prvi kontakt
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 polarnik в komentara sa malom nijansom: javax.jms-api-2.0.jar umjesto jms.jar.
Dolazi do greške NoClassDEfFoundError sa jms.jar, rješenje za koje sam pronašao ovdje.

  • 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:

IBM MQ i JMeter: Prvi kontakt
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):

IBM MQ i JMeter: Prvi kontakt
Slika 15: Opcije MQ veze

Drugi su imena ciljnih objekata koji se odnose na redove:

IBM MQ i JMeter: Prvi kontakt
Slika 16: Parametrizovana imena redova

Sve što ostaje je konfigurirati JMS Publisher da učita testnu poruku u odlazni red:

IBM MQ i JMeter: Prvi kontakt
Slika 17: Postavljanje JMS Publishera

I JMS Subscriber da pročita poruku iz dolaznog reda čekanja:

IBM MQ i JMeter: Prvi kontakt
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.

IBM MQ i JMeter: Prvi kontakt

izvor: www.habr.com