Hej Habr!
Ky është një paraardhës i imi dhe në të njëjtën kohë një ribërje e artikullit .
Këtë herë do t'ju tregoj për përvojën time të harmonizimit të JMeter dhe IBM MQ për testim të lumtur të aplikacioneve në IBM WAS. Unë u përballa me një detyrë të tillë, nuk ishte e lehtë. Dua të ndihmoj të kursej kohë për të gjithë të interesuarit.

Paraqitje
Rreth projektit: autobusi i të dhënave, shumë mesazhe xml, tre zona shkëmbimi (radhë, baza e të dhënave, sistemi i skedarëve), shërbime ueb me logjikën e tyre të përpunimit të mesazheve. Ndërsa projekti përparonte, testimi manual u bë gjithnjë e më i vështirë. Apache JMeter u thirr në shpëtim - i fuqishëm dhe me burim të hapur, me një komunitet të madh përdoruesish dhe një ndërfaqe miqësore. Lehtësia e personalizimit të versionit jashtë kutisë ju lejon të mbuloni çdo rast dhe premtimin e zhvilluesit kryesor për të ndihmuar për çdo rast (ka ndihmuar) më në fund konfirmoi zgjedhjen time.
Përgatitja e kontekstit fillestar
Për të bashkëvepruar me menaxherin e radhës, ju nevojitet një kontekst fillestar. Ka disa lloje, këtu mund të lexoni më shumë.
Për ta krijuar atë, është i përshtatshëm të përdorni MQ Explorer:

Figura 1: Shtimi i një konteksti fillestar
Zgjidhni llojin e skedarit të kontekstit dhe direktorinë e ruajtjes .lidhjet skedar që do të përmbajë një përshkrim të objekteve JNDI:

Figura 2: Zgjedhja e llojit fillestar të kontekstit
Pastaj mund të filloni të krijoni këto objekte. Dhe filloni me fabrikën e lidhjes:

Figura 3: Krijimi i një fabrike lidhjeje
Zgjidhni një emër miqësor...

Figura 4: Zgjedhja e emrit të fabrikës së lidhjes
... dhe lloji Fabrika e lidhjes në radhë:

Figura 5: Zgjedhja e llojit të fabrikës së lidhjes
Protokolli - Klienti MQ për të qenë në gjendje të ndërveproni me MQ nga distanca:

Figura 6: Përzgjedhja e Protokollit të Fabrikës së Lidhjes
Në hapin tjetër, mund të zgjidhni një fabrikë ekzistuese dhe të kopjoni cilësime të mëtejshme prej saj. Klikoni Tjetër, nëse nuk ka asnjë:

Figura 7: Zgjedhja e cilësimeve për një fabrikë ekzistuese lidhjesh
Në dritaren e përzgjedhjes së parametrave, mjafton të specifikoni tre. Në skedën Lidhje tregoni emrin e menaxherit të radhës dhe stendën e IP-së me vendndodhjen e saj (port 1414 largohu):

Figura 8: Konfigurimi i cilësimeve të fabrikës së lidhjes
Dhe në skedën Kanalet — kanal për lidhje. Klikoni Fund te perfundosh:

Figura 9: Përfundimi i krijimit të fabrikës së lidhjes
Tani le të krijojmë një lidhje me radhën:

Figura 10: Krijimi i një objekti të synuar
Le të zgjedhim një emër miqësor (preferoj të tregoj emrin e vërtetë të radhës) dhe të shkruajmë Radhë:

Figura 11: Zgjedhja e emrit dhe llojit të objektivit
Për analogji me Figura 7 Mund të kopjoni cilësimet nga një radhë ekzistuese. Gjithashtu klikoni Tjetër, nëse është i pari:

Figura 12: Zgjedhja e cilësimeve për një objektiv ekzistues
Në dritaren e cilësimeve, thjesht zgjidhni emrin e menaxherit dhe radhën e dëshiruar, klikoni Fund. Pastaj përsërisni numrin e kërkuar të herë derisa të krijohen të gjitha radhët e nevojshme për të bashkëvepruar me JMeter:

Figura 13: Përfundimi i krijimit të objektivit
Përgatitja e JMeter
Përgatitja e JMeter përfshin shtimin e bibliotekave të nevojshme për të bashkëvepruar me MQ. Ato janë të vendosura në %wmq_home%/java/lib. Kopjojini ato në %jmeter_home%/lib/ext përpara se të nisni JMeter.
- 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
- ofrojërutil.jar
Lista alternative e sugjeruar в me një nuancë të vogël: javax.jms-api-2.0.jar në vend të jms.jar.
Ndodh një gabim NoClassDEfFoundError me jms.jar, zgjidhjen për të cilën gjeta .
- com.ibm.mq.allclient.jar
- fscontext.jar
- javax.jms-api-2.0.jar
- ofrojërutil.jar
Të dyja listat e bibliotekave funksionojnë me sukses me JMeter 5.0 dhe IBM MQ 8.0.0.4.
Vendosja e një plani testimi
Grupi i nevojshëm dhe i mjaftueshëm i elementeve JMeter duket kështu:

Figura 14: Plani i testimit
Ekzistojnë pesë variabla në planin e testit të shembullit. Pavarësisht numrit të tyre të vogël, unë rekomandoj krijimin e elementeve të veçanta të konfigurimit për lloje të ndryshme variablash. Ndërsa testet rriten, kjo do ta bëjë navigimin shumë më të lehtë. Në këtë rast, marrim dy lista. E para përmban parametra për t'u lidhur me MQ (shih. Figura 2 и Figura 4):

Figura 15: Opsionet e lidhjes MQ
E dyta janë emrat e objekteve të synuara që i referohen radhëve:

Figura 16: Emrat e radhëve të parametrizuara
Gjithçka që mbetet është të konfiguroni JMS Publisher për të ngarkuar mesazhin e testimit në radhën dalëse:

Figura 17: Vendosja e botuesit JMS
Dhe Abonenti JMS për të lexuar një mesazh nga radha në hyrje:

Figura 18: Konfigurimi i pajtimtarit JMS
Nëse gjithçka është bërë si duhet, rezultati i ekzekutimit në listener do të jetë i mbushur me ngjyra të gjelbra të ndritshme dhe të gëzuara.
Përfundim
I kam lënë qëllimisht çështjet e rrugës dhe administrimit; këto janë tema mjaft intime dhe të gjera për botime të veçanta.
Përveç kësaj, ekziston një pjesë e konsiderueshme e nuancave në punën me radhët, bazat e të dhënave dhe skedarët, për të cilat gjithashtu do të doja të flisja veçmas dhe në detaje.
Kurseni kohën tuaj. Dhe faleminderit për vëmendjen tuaj.

Burimi: www.habr.com
