IBM MQ a JMeter: První kontakt

Čau Habr!

Toto je prequel k mému předchozí publikace a zároveň remake článku Automatizované testování služeb pomocí protokolu MQ pomocí JMeter.

Tentokrát vám povím o své zkušenosti se slaďováním JMeter a IBM MQ pro spokojené testování aplikací na IBM WAS. Stál jsem před takovým úkolem, nebylo to jednoduché. Chci pomoci ušetřit čas všem zájemcům.

IBM MQ a JMeter: První kontakt

úvod

O projektu: datová sběrnice, mnoho xml zpráv, tři oblasti výměny (fronty, databáze, souborový systém), webové služby s vlastní logikou zpracování zpráv. Jak projekt postupoval, ruční testování bylo stále obtížnější. Na pomoc byl povolán Apache JMeter – výkonný a open source, s velkou komunitou uživatelů a přátelským rozhraním. Snadné přizpůsobení předpřipravené verze vám umožní pokrýt jakékoli případy a příslib hlavního vývojáře pomoci Pokud něco (to pomohlo) nakonec potvrdil můj výběr.

Příprava výchozího kontextu

K interakci se správcem front potřebujete počáteční kontext. Existuje několik typů, zde zde můžete si přečíst více.
K jeho vytvoření je vhodné použít MQ Explorer:

IBM MQ a JMeter: První kontakt
Obrázek 1: Přidání počátečního kontextu

Vyberte typ souboru kontextu a adresář úložiště .vázání soubor, který bude obsahovat popis objektů JNDI:

IBM MQ a JMeter: První kontakt
Obrázek 2: Výběr výchozího typu kontextu

Poté můžete začít vytvářet tyto objekty. A začněte továrnou na připojení:

IBM MQ a JMeter: První kontakt
Obrázek 3: Vytvoření továrny na připojení

Vyberte si přátelské jméno...

IBM MQ a JMeter: První kontakt
Obrázek 4: Výběr názvu výrobce připojení

... a typ Továrna na připojení fronty:

IBM MQ a JMeter: První kontakt
Obrázek 5: Výběr továrního typu připojení

Protokol - Klient MQ abyste mohli na dálku komunikovat s MQ:

IBM MQ a JMeter: První kontakt
Obrázek 6: Výběr továrního protokolu připojení

V dalším kroku můžete vybrat existující továrnu a zkopírovat z ní další nastavení. Klikněte další, pokud žádný není:

IBM MQ a JMeter: První kontakt
Obrázek 7: Výběr nastavení pro stávající továrnu na připojení

V okně výběru parametrů stačí zadat tři. Na kartě přípojka uveďte název správce front a IP stojan s jeho umístěním (port 1414 odejít):

IBM MQ a JMeter: První kontakt
Obrázek 8: Konfigurace továrních parametrů připojení

A na kartě Kanály — kanál pro připojení. Klikněte úprava dokončit:

IBM MQ a JMeter: První kontakt
Obrázek 9: Dokončení vytvoření továrny připojení

Nyní vytvoříme připojení k frontě:

IBM MQ a JMeter: První kontakt
Obrázek 10: Vytvoření cílového objektu

Zvolme popisný název (raději uvádím skutečný název fronty) a napište Fronta:

IBM MQ a JMeter: První kontakt
Obrázek 11: Výběr názvu a typu cíle

Analogicky s Obrázek 7 Nastavení můžete zkopírovat z existující fronty. Také klikněte další, pokud je první:

IBM MQ a JMeter: První kontakt
Obrázek 12: Výběr nastavení pro existující cíl

V okně nastavení stačí vybrat jméno manažera a požadovanou frontu, kliknout úprava. Poté opakujte požadovaný počet opakování, dokud nebudou vytvořeny všechny fronty potřebné k interakci s JMeter:

IBM MQ a JMeter: První kontakt
Obrázek 13: Dokončení vytváření cíle

Příprava JMeter

Příprava JMeter zahrnuje přidání knihoven potřebných k interakci s MQ. Jsou umístěny v %wmq_home%/java/lib. Před spuštěním JMeter je zkopírujte do %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

Navrhovaný alternativní seznam polárník в komentáře s malou nuancí: javax.jms-api-2.0.jar místo jms.jar.
Chyba NoClassDEfFoundError se vyskytuje u jms.jar, řešení, které jsem našel zde.

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

Oba seznamy knihoven úspěšně fungují s JMeter 5.0 a IBM MQ 8.0.0.4.

Nastavení testovacího plánu

Potřebná a dostatečná sada prvků JMeter vypadá takto:

IBM MQ a JMeter: První kontakt
Obrázek 14: Plán testu

V příkladu testovacího plánu je pět proměnných. I přes jejich malý počet doporučuji vytvořit samostatné konfigurační prvky pro různé typy proměnných. S rostoucími testy to usnadní navigaci. V tomto případě dostaneme dva seznamy. První obsahuje parametry pro připojení k MQ (viz. Obrázek 2 и Obrázek 4):

IBM MQ a JMeter: První kontakt
Obrázek 15: Možnosti připojení MQ

Druhým jsou názvy cílových objektů, které odkazují na fronty:

IBM MQ a JMeter: První kontakt
Obrázek 16: Parametrizované názvy front

Zbývá pouze nakonfigurovat JMS Publisher tak, aby načetl testovací zprávu do odchozí fronty:

IBM MQ a JMeter: První kontakt
Obrázek 17: Nastavení JMS Publisher

A JMS Subscriber, aby si přečetl zprávu z příchozí fronty:

IBM MQ a JMeter: První kontakt
Obrázek 18: Konfigurace JMS Subscriber

Pokud je vše provedeno správně, výsledek popravy v posluchači bude naplněn jasnými a veselými zelenými barvami.

Závěr

Záměrně jsem vynechal problematiku směrování a administrace, to jsou spíše intimní a obsáhlá témata na samostatné publikace.

Kromě toho existuje značná část nuancí v práci s frontami, databázemi a soubory, o kterých bych také rád hovořil samostatně a podrobně.

Ušetřete čas. A děkuji za pozornost.

IBM MQ a JMeter: První kontakt

Zdroj: www.habr.com