IBM MQ un JMeter: pirmā kontaktpersona

Čau Habr!

Å is ir mans priekÅ”vēsture iepriekŔējā publikācija un reizē arÄ« raksta pārtaisÄ«jums Automatizēta pakalpojumu pārbaude, izmantojot MQ protokolu, izmantojot JMeter.

Å oreiz es jums pastāstÄ«Å”u par savu pieredzi, saskaņojot JMeter un IBM MQ, lai veiksmÄ«gi pārbaudÄ«tu lietojumprogrammas IBM WAS. Man bija Ŕāds uzdevums, tas nebija viegli. Vēlos palÄ«dzēt ietaupÄ«t laiku ikvienam interesentam.

IBM MQ un JMeter: pirmā kontaktpersona

Ievads

Par projektu: datu kopne, daudz xml ziņojumu, trÄ«s apmaiņas zonas (rindas, datu bāze, failu sistēma), tÄ«mekļa pakalpojumi ar savu ziņojumu apstrādes loÄ£iku. Projektam turpinoties, manuālā testÄ“Å”ana kļuva arvien grÅ«tāka. Apache JMeter tika izsaukts palÄ«gā ā€” jaudÄ«gs un atvērtā koda avots, ar lielu lietotāju kopienu un draudzÄ«gu saskarni. Izgatavotās versijas pielāgoÅ”anas vienkārŔība ļauj aptvert visus gadÄ«jumus un galvenā izstrādātāja solÄ«jumu palÄ«dzēt katram gadÄ«jumam (tas palÄ«dzēja) beidzot apstiprināja manu izvēli.

Sākotnējā konteksta sagatavoÅ”ana

Lai sazinātos ar rindu pārvaldnieku, ir nepiecieÅ”ams sākotnējais konteksts. Å eit ir vairāki veidi Å”eit jÅ«s varat lasÄ«t vairāk.
Lai to izveidotu, ir ērti izmantot MQ Explorer:

IBM MQ un JMeter: pirmā kontaktpersona
1. attēls. Sākotnējā konteksta pievienoÅ”ana

Atlasiet konteksta faila veidu un krātuves direktoriju .iesējumi fails, kurā būs JNDI objektu apraksts:

IBM MQ un JMeter: pirmā kontaktpersona
2. attēls. Sākotnējā konteksta veida izvēle

Pēc tam jÅ«s varat sākt veidot Å”os objektus. Un sāciet ar savienojuma rÅ«pnÄ«cu:

IBM MQ un JMeter: pirmā kontaktpersona
3. attēls. Savienojuma rūpnīcas izveide

Izvēlieties draudzīgu vārdu...

IBM MQ un JMeter: pirmā kontaktpersona
4. attēls. Savienojuma rūpnīcas nosaukuma izvēle

... un tips Rindas savienojuma rūpnīca:

IBM MQ un JMeter: pirmā kontaktpersona
5. attēls. Savienojuma rūpnīcas veida izvēle

Protokols - MQ klients lai varētu attālināti mijiedarboties ar MQ:

IBM MQ un JMeter: pirmā kontaktpersona
6. attēls. Savienojuma rūpnīcas protokola izvēle

Nākamajā darbÄ«bā varat atlasÄ«t esoÅ”u rÅ«pnÄ«cu un no tās kopēt citus iestatÄ«jumus. KlikŔķis nākamais, ja tāda nav:

IBM MQ un JMeter: pirmā kontaktpersona
7. attēls. EsoÅ”as savienojuma rÅ«pnÄ«cas iestatÄ«jumu atlase

Parametru atlases logā pietiek norādīt trīs. Uz cilnes saistība norādiet rindas pārvaldnieka nosaukumu un IP stendu ar tā atraŔanās vietu (port 1414 atstāt):

IBM MQ un JMeter: pirmā kontaktpersona
8. attēls. Savienojuma rÅ«pnÄ«cas iestatÄ«jumu konfigurÄ“Å”ana

Un cilnē Kanāli ā€” savienojuma kanāls. KlikŔķis apdare lai pabeigtu:

IBM MQ un JMeter: pirmā kontaktpersona
9. attēls. Savienojuma rÅ«pnÄ«cas izveides pabeigÅ”ana

Tagad izveidosim savienojumu ar rindu:

IBM MQ un JMeter: pirmā kontaktpersona
10. attēls. Mērķa objekta izveide

Izvēlēsimies draudzīgu nosaukumu (labāk gribu norādīt īsto rindas nosaukumu) un ierakstīsim Rinda:

IBM MQ un JMeter: pirmā kontaktpersona
11. attēls. Mērķa nosaukuma un veida atlase

Pēc analoÄ£ijas ar 7. attēls Varat kopēt iestatÄ«jumus no esoÅ”as rindas. NoklikŔķiniet arÄ« uz nākamais, ja tas ir pirmais:

IBM MQ un JMeter: pirmā kontaktpersona
12. attēls. EsoÅ”a mērÄ·a iestatÄ«jumu atlase

IestatÄ«jumu logā vienkārÅ”i atlasiet pārvaldnieka nosaukumu un vajadzÄ«go rindu, noklikŔķiniet uz apdare. Pēc tam atkārtojiet vajadzÄ«go reižu skaitu, lÄ«dz ir izveidotas visas rindas, kas nepiecieÅ”amas, lai mijiedarbotos ar JMeter:

IBM MQ un JMeter: pirmā kontaktpersona
13. attēls. MērÄ·a izveides pabeigÅ”ana

JMeter sagatavoŔana

JMeter sagatavoÅ”ana ietver bibliotēku pievienoÅ”anu, kas nepiecieÅ”amas, lai mijiedarbotos ar MQ. Tie atrodas %wmq_home%/java/lib. Pirms JMeter palaiÅ”anas kopējiet tos uz %jmeter_home%/lib/ext.

  • 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

Ieteikts alternatÄ«vs saraksts polarnik Š² komentāri ar nelielu niansi: javax.jms-api-2.0.jar, nevis jms.jar.
Kļūda NoClassDEfFoundError rodas ar jms.jar, kuras risinājumu es atradu Ŕeit.

  • com.ibm.mq.allclient.jar
  • fscontext.jar
  • javax.jms-api-2.0.jar
  • providerutil.jar

Abi bibliotēku saraksti veiksmīgi darbojas ar JMeter 5.0 un IBM MQ 8.0.0.4.

Pārbaudes plāna sastādīŔana

NepiecieŔamais un pietiekams JMeter elementu komplekts izskatās Ŕādi:

IBM MQ un JMeter: pirmā kontaktpersona
14. attēls. Pārbaudes plāns

Testa plāna piemērā ir pieci mainÄ«gie. Neskatoties uz to nelielo skaitu, es iesaku izveidot atseviŔķus konfigurācijas elementus dažāda veida mainÄ«gajiem. Pārbaudēm pieaugot, tas ievērojami atvieglos navigāciju. Å ajā gadÄ«jumā mēs iegÅ«stam divus sarakstus. Pirmajā ir parametri savienojuma izveidei ar MQ (sk. Skaitlis 2 Šø Skaitlis 4):

IBM MQ un JMeter: pirmā kontaktpersona
15. attēls: MQ savienojuma opcijas

Otrais ir mērķa objektu nosaukumi, kas attiecas uz rindām:

IBM MQ un JMeter: pirmā kontaktpersona
16. attēls. Parametrizētie rindu nosaukumi

Atliek tikai konfigurēt JMS Publisher, lai ielādētu testa ziņojumu izejoŔā rindā:

IBM MQ un JMeter: pirmā kontaktpersona
17. attēls. JMS Publisher iestatÄ«Å”ana

Un JMS abonents, lai lasÄ«tu ziņojumu no ienākoŔās rindas:

IBM MQ un JMeter: pirmā kontaktpersona
18. attēls: JMS abonenta konfigurÄ“Å”ana

Ja viss ir izdarīts pareizi, izpildes rezultāts sarakstā tiks piepildīts ar koŔām un jautrām zaļām krāsām.

Secinājums

Es apzināti izlaidu jautājumus par marÅ”rutÄ“Å”anu un administrÄ“Å”anu, tie ir diezgan intÄ«mi un plaÅ”i temati atseviŔķām publikācijām.

Turklāt darbā ar rindām, datu bāzēm un failiem ir ievērojama daļa nianÅ”u, par kurām es arÄ« vēlētos runāt atseviŔķi un detalizēti.

Ietaupiet savu laiku. Un paldies par uzmanību.

IBM MQ un JMeter: pirmā kontaktpersona

Avots: www.habr.com