IBM MQ és JMeter: Első kapcsolat

Helló, Habr!

Ez egy előzménye a korábbi publikációmnak és ugyanakkor egy cikk újragondolása Automatizált tesztelés MQ protokollt használó szolgáltatásokkal JMeter segítségével.

Ezúttal megosztom tapasztalataimat az IBM MQ és JMeter összeegyeztetéséről az IBM WAS alkalmazások boldog teszteléséhez. Egy olyan feladattal találkoztam, ami nem volt könnyű. Szeretnék segíteni mindenkinek, akit érdekel, hogy időt spóroljon.

IBM MQ és JMeter: Első kapcsolat

Bevezetés

A projektről: adatbusz, több xml-üzenet, három csere terület (sorok, adatbázis, fájlrendszer), webszolgáltatások saját üzenetfeldolgozási logikájukkal. A projekt fejlődésével a manuális tesztelés egyre nehezebbé vált. Segítségül hívta az Apache JMeter-t - egy erős, nyílt forráskódú eszközt, nagy felhasználói közösséggel és barátságos felülettel. A „dobozból” való könnyű testreszabás lehetővé teszi bármilyen eset lefedését, és a fő fejlesztő ígérete, hogy segít, ha bármire szükség van (tényleg segített) véglegessé tette a választást.

Kezdő kontextus létrehozása

A sorkezelővel való interakcióhoz szükséges egy kezdő kontextus. Különböző típusai léteznek, itt itt többet lehet olvasni.
A létrehozásához kényelmes használni a MQ Explorert:

IBM MQ és JMeter: Első kapcsolat
1. ábra: Kezdő kontextus hozzáadása

Válassza ki a fájltípus kontextust és a tárolási könyvtárat .bindings fájl, amely tartalmazza a JNDI-objektumok leírását:

IBM MQ és JMeter: Első kapcsolat
2. ábra: Kezdő kontextus típusának kiválasztása

Ezután elkezdheti ezen objektumok létrehozását. Kezdje a kapcsolatgyártóval:

IBM MQ és JMeter: Első kapcsolat
3. ábra: Kapcsolatgyártó létrehozása

Válasszon érthető nevet...

IBM MQ és JMeter: Első kapcsolat
4. ábra: Kapcsolatgyártó nevének kiválasztása

... és típust Queue Connection Factory:

IBM MQ és JMeter: Első kapcsolat
5. ábra: Kapcsolatgyártó típusának kiválasztása

Protokoll - MQ Client az MQ távoli elérhetőségéhez:

IBM MQ és JMeter: Első kapcsolat
6. ábra: Kapcsolatgyártó protokolljának kiválasztása

A következő lépésben egy már létező gyártót választhat ki, és a további beállításokat másolhatja róla. Kattintson Tovább, ha nincs ilyen:

IBM MQ és JMeter: Első kapcsolat
7. ábra: Létező kapcsolatgyártó beállításainak kiválasztása

A paraméterek kiválasztása ablakban elegendő három adatot megadni. A "Connection" fülön Connection adja meg a sorkezelő nevét és az ip címet, ahol található (a portot 1414 hagyja üresen):

IBM MQ és JMeter: Első kapcsolat
8. ábra: Kapcsolatgyártó paramétereinek beállítása

És a "Channels" fülön - a csatorna a kapcsolathoz. Kattintson a Befejezés gombra a befejezéshez: 9. ábra: A kapcsolatgyártó létrehozásának befejezése gombra a befejezéshez:

IBM MQ és JMeter: Első kapcsolat
9. ábra: A kapcsolatgyártó létrehozásának befejezése

Most készítsünk kapcsolatot a sorral:

IBM MQ és JMeter: Első kapcsolat
10. ábra: Célobjektum létrehozása

Válasszunk egy érthető nevet (személy szerint a valódi sor nevét javaslom) és típust Sor:

IBM MQ és JMeter: Első kapcsolat
11. ábra: Név és típusszelekció a célobjektumhoz

Hasonlóan a 7. ábrához , másolhatjuk a létező sor beállításait is. Kattintsunk a Tovább, ha ez az első:

IBM MQ és JMeter: Első kapcsolat
12. ábra: Létező célobjektum beállításainak kiválasztása

A beállítások ablakában elegendő a menedzser nevét és a kívánt sort választani, majd kattintani a 9. ábra: A kapcsolatgyártó létrehozásának befejezése. Ezt követően ismételjük meg szükség szerint, amíg az összes, a JMeterrel való interakcióhoz szükséges sor létre nem jön:

IBM MQ és JMeter: Első kapcsolat
13. ábra: Célobjektum létrehozásának befejezése

JMeter előkészítése

A JMeter előkészítése a MQ-val való interakcióhoz szükséges könyvtárak hozzáadását jelenti. Ezek a következő mappában találhatók: %wmq_home%/java/lib. Másolja őket a %jmeter_home%/lib/ext könyvtárba a JMeter indítása előtt.

  • 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

Alternatív lista, amelyet javasolt polarnik be. hozzászólások kis eltéréssel: javax.jms-api-2.0.jar a jms.jar helyett.
A jms.jar használatakor NoClassDefFoundError hiba lép fel, amelynek megoldását találtam itt.

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

Mindkét könyvtárlista sikeresen működik a JMeter 5.0 és az IBM MQ 8.0.0.4 verzióval.

Tesztterv beállítása

A szükséges és elegendő JMeter elemek készlete a következőképpen néz ki:

IBM MQ és JMeter: Első kapcsolat
14. ábra: Tesztterv

A tesztterv példájában öt változó található. A kis számuk ellenére javaslom, hogy külön konfigurációs elemeket hozzunk létre a különböző változó típusok számára. Ahogy a tesztek nőnek, ez jelentősen megkönnyíti a navigációt. Ebben az esetben két lista keletkezik. Az első a MQ-hoz való csatlakozás paramétereit tartalmazza (lásd: 2. ábra és 4. ábra):

IBM MQ és JMeter: Első kapcsolat
15. ábra: Csatlakozási paraméterek MQ-hoz

A második a sorokra hivatkozó célobjektumok nevét tartalmazza:

IBM MQ és JMeter: Első kapcsolat
16. ábra: Paraméterezett sornevek

Most be kell állítanunk a JMS Publisht a tesztüzenet kimenő sorba történő betöltéséhez:

IBM MQ és JMeter: Első kapcsolat
17. ábra: JMS Publisher beállítása

És a JMS Subscriber-t az üzenet beolvasásához a bejövő sorból:

IBM MQ és JMeter: Első kapcsolat
18. ábra: JMS Subscriber beállítása

Ha minden rendben van, a végrehajtás eredménye a figyelőben élénk és boldog zöld színekkel telik meg.

Zárás

Szándékosan kihagytam a forgalmazás és az adminisztráció kérdését, ezek meglehetősen intim és széles témák, amelyek külön publikációkat igényelnek.

Ezenkívül van egy jelentős rész nyűg a sorokkal, adatbázisokkal és fájlokkal kapcsolatban, amelyekről szintén szeretnék külön és alaposan beszélni.

Őrizzétek meg az időtöket. Köszönjük a figyelmet.

IBM MQ és JMeter: Első kapcsolat

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster