IBM MQ i JMeter: Prvi kontakt

Hej Habr!

Ovo je prednastavak za moj prethodna objava a ujedno i prerada članka Automatizirano testiranje usluga korištenjem MQ protokola pomoću JMetera.

Ovaj put ću vam ispričati svoje iskustvo usklađivanja JMeter-a i IBM MQ-a za sretno testiranje aplikacija na IBM WAS-u. Bio sam pred takvim zadatkom, nije bilo lako. Želim pomoći uštedjeti vrijeme svima zainteresiranima.

IBM MQ i JMeter: Prvi kontakt

Uvod

O projektu: sabirnica podataka, mnogo xml poruka, tri područja razmjene (redovi čekanja, baza podataka, datotečni sustav), web servisi s vlastitom logikom obrade poruka. Kako je projekt napredovao, ručno testiranje postajalo je sve teže. U pomoć je pozvan Apache JMeter - moćan i otvorenog koda, s velikom zajednicom korisnika i prijateljskim sučeljem. Lakoća prilagodbe gotove verzije omogućuje vam da pokrijete sve slučajeve i obećanje glavnog programera da će vam pomoći za svaki slučaj (pomoglo je) konačno je potvrdio moj izbor.

Priprema početnog konteksta

Za interakciju s upraviteljem čekanja potreban vam je početni kontekst. Postoji nekoliko vrsta, ovdje ovdje možete pročitati više.
Za njegovu izradu prikladno 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 datoteka koja će sadržavati opis JNDI objekata:

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

Tada možete početi stvarati te objekte. I počnite s tvornicom povezivanja:

IBM MQ i JMeter: Prvi kontakt
Slika 3: Stvaranje tvornice povezivanja

Odaberite prijateljsko ime...

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

... i tip Queue Connection Factory:

IBM MQ i JMeter: Prvi kontakt
Slika 5: Odabir tipa tvornice veze

Protokol - MQ klijent kako biste mogli komunicirati s MQ-om na daljinu:

IBM MQ i JMeter: Prvi kontakt
Slika 6: Odabir protokola tvornice povezivanja

U sljedećem koraku možete odabrati postojeću tvornicu i iz nje kopirati daljnje postavke. Klik Sljedeći, ako nema:

IBM MQ i JMeter: Prvi kontakt
Slika 7: Odabir postavki za postojeću tvornicu povezivanja

U prozoru za odabir parametara dovoljno je navesti tri. Na kartici priključak navedite ime upravitelja čekanja i IP stalak s njegovom lokacijom (port 1414 napustiti):

IBM MQ i JMeter: Prvi kontakt
Slika 8: Konfiguriranje parametara Connection Factory

I na kartici Kanali — kanal za vezu. Klik završiti dovršiti:

IBM MQ i JMeter: Prvi kontakt
Slika 9: Dovršavanje stvaranja tvornice povezivanja

Kreirajmo sada vezu s redom:

IBM MQ i JMeter: Prvi kontakt
Slika 10: Stvaranje ciljanog objekta

Odaberimo prijateljski naziv (ja radije naznačim pravi naziv reda čekanja) i utipkajmo Red:

IBM MQ i JMeter: Prvi kontakt
Slika 11: Odabir naziva cilja i vrste

Po analogiji s 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, kliknite završiti. Zatim ponovite potreban broj puta dok se ne stvore svi redovi čekanja potrebni za interakciju s JMeterom:

IBM MQ i JMeter: Prvi kontakt
Slika 13: Dovršavanje stvaranja cilja

Priprema JMeter

Priprema JMetera uključuje dodavanje knjižnica potrebnih za interakciju s MQ-om. Nalaze se u %wmq_home%/java/lib. Kopirajte ih u %jmeter_home%/lib/ext prije pokretanja JMetera.

  • 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

Predlaže se alternativni popis polarnik в nema komentara s malom nijansom: javax.jms-api-2.0.jar umjesto jms.jar.
Pojavljuje se pogreška NoClassDEfFoundError s 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

Oba popisa knjižnica uspješno rade s 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 stvaranje zasebnih konfiguracijskih elemenata za različite vrste varijabli. Kako testovi budu rasli, to će znatno olakšati navigaciju. U ovom slučaju dobivamo dvije liste. Prvi sadrži parametre za spajanje na MQ (vidi. Slika 2 и Slika 4):

IBM MQ i JMeter: Prvi kontakt
Slika 15: MQ opcije povezivanja

Drugi su nazivi ciljnih objekata koji se odnose na redove:

IBM MQ i JMeter: Prvi kontakt
Slika 16: Parametrizirani nazivi reda čekanja

Sve što preostaje je konfigurirati JMS Publisher za učitavanje testne poruke u odlazni red:

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

I JMS pretplatnik za čitanje poruke iz dolaznog reda:

IBM MQ i JMeter: Prvi kontakt
Slika 18: Konfiguriranje JMS pretplatnika

Ako je sve učinjeno ispravno, rezultat izvršenja u popisivaču bit će ispunjen svijetlim i veselim zelenim bojama.

Zaključak

Namjerno sam izostavio pitanja usmjeravanja i administracije, to su prilično intimne i opsežne teme za zasebne publikacije.

Osim toga, postoji značajan dio nijansi u radu s redovima, bazama podataka i datotekama, o kojima bih također želio govoriti zasebno i detaljno.

Uštedite svoje vrijeme. I hvala na pažnji.

IBM MQ i JMeter: Prvi kontakt

Izvor: www.habr.com