how test application messaging queue
Hva er Messaging Queue?
Meldingskø (MQ) , et meldingsorientert mellomvareverktøy, er et IBM produkt siden 1992. Det er veldig nyttig å kommunisere meldinger (XML / tekstfil / HTML-fil osv.) i SOA (serviceorientert arkitektur) på over 80 plattformer.
Den er pålitelig og gir et sikret, sikret kommunikasjonsmedium og en utmerket meldingsløsning til Bedriftsarkitektur over hele kloden.
Dagens artikkel handler om å teste Messaging Queue som letter transport av meldinger mellom to applikasjoner / moduler. Dette vil hjelpe deg med å teste forbindelsen mellom applikasjoner / moduler under meldingstransport.
Hva du vil lære:
- Sanntidseksempel på meldings-køsystem
- Søknad med MQ
- Teknisk eksempel
- Funksjonell testing med MQ
- MQ i SOA
- MQ-relaterte problemer under testing
- Konklusjon
- Anbefalt lesing
Eksempel på sanntid Meldingskø system
La oss ta ICICI Bank som inkluderer mange systemer som kjører parallelt for å lage en komplett applikasjon. Anta at ICICI Bank viser en årlig fortjenestemargin på $ 100 millioner for året 2015.
Dette overskuddet vil være et sammensetning av alle systemer som sparekonto, kredittkortkonto, boliglånskonto og så videre.
ICICI-banken som morsystem søker kommunikasjon fra hvert av sine individuelle systemer. Denne kommunikasjonen kan primært utføres av Meldingskø system.
Forelder ICICI-bank kan sende en forespørsel om at den trenger bruttofortjenesten i sparekonto-applikasjonen. Lagringskontoapplikasjonen beregner deretter denne informasjonen, lagrer den i form av XML og plasserer den i den eksterne køen.
Foreldresystemet vil da ringe den eksterne køen for å hente denne informasjonen.
Søknad med MQ
Nøkkelkonfigurasjonen i SQM setter opp Køansvarlig .
Noen viktige detaljer om køadministratoren er nevnt nedenfor
- Det eier / administrerer den fullstendige funksjonen til WebSphere MQ-applikasjon .
- Det er ikke ansvarlig for overføring av data.
- Inneholder en kanal og port for å overføre data til en bestemt destinasjonskø eller for å lagre meldingen internt til annen kø velger meldingen.
- Applikasjoner kan ha flere køadministratorer / kanaler for å kommunisere meldinger.
Teknisk eksempel
La oss anta at det er applikasjoner APPS, APPP, APPF, APPL, APPD . Alle kommuniserer meldinger mellom hverandre. Noen av dem har toveiskommunikasjonsstrukturer .
- APPS er en salgsapplikasjon, med køansvarlig-APPSQM, kanal-APPSCH, kønavn-MQS, portnum-11112
- APPP er et produktbehandlingsprogram, med købehandling-APPPQM, kanal-APPPCH, kønavn-MQP, portnum-1111
- APPF er et ferdig, fullt funksjonelt program, med købehandling-APPFQM, kanal-APPFCH, kønavn-Mqf, portnum-1112
- APPL er en logistikkapplikasjon, med køansvarlig-APPLQM, kanal-APPLCH, kønavn-MQD, portnum-1112
- APPD er en leveringsapplikasjon, med købehandling-APPDQM, kanal-APPDCH, kønavn-MQD, portnum-1112
Scenario 1 - APPS sender data til APPP
Hver av de ovennevnte applikasjonene vil ha to konfigurasjonsfiler, applikasjonskonfigurasjon og Meldingskø konfigurasjon. Søknadskonfigurasjonen inneholder detaljer om prosedyrer og databehandling for XML-meldingen.
De SQM konfigurasjonsfilen vil ha SQM relaterte detaljer som købehandling-APPSQM, kanal-APPSCH, kønavn-MQS, portnum-1111.
( Merk: Klikk på bildet for forstørret visning)
Først når APPS applikasjonen behandler dataene, genererer den XML-meldingen og setter den i køen. APPS jobben er gjort.
Det er på tide å velge meldingen ved den andre køen til da vil køadministratoren beholde dataene.
La oss nå si APPP applikasjonen skal velge XML-meldingen fra MQS-køen. De APPP MQ-konfigurasjonsfil er konfigurert for å hente XML-meldingen fra MQS-køen.
MQP-køen vil hente XML-meldingen fra MQS-køen og sende den til APPP søknad om videre behandling.
Lignende prosesser utføres av hver applikasjon for å innhente data fra andre applikasjoner.
Scenario 2 - APPP sender data til APPS
Denne gangen vil konfigurasjonsfilene være forskjellige på begge sider. MQ-konfigurasjonsfilen kl APPP vil ha forskjellig køinformasjon som købehandling-APPPQMR, kanal-APPPCHR, kønavn-MqpR, portnum-1111.
Og APPS vil ha forskjellig køinformasjon som køansvarlig-APPSQMR, kanal-APPSCHR, kønavn-MqsR, portnum-1111. Husk at portnummeret kan være likt for få applikasjoner, ettersom de kan kobles som jevnaldrende i samme system.
gratis tidsklokke programvare for pc
Derfor, alle applikasjonene må konfigureres deretter for å kommunisere meldinger seg imellom.
Det er en mulighet for at en kommunikasjon kan skje mellom lokale applikasjoner som er i et nåværende system med en ekstern applikasjon andre steder. Som nevnt ovenfor, bør både lokale og eksterne applikasjoner ha konfigurasjonsfiler å sette opp på serveren for å muliggjøre kommunikasjon.
Som nevnt ovenfor, både lokale og eksterne applikasjoner bør ha konfigurasjonsfiler å sette opp på serveren for å muliggjøre kommunikasjon.
Funksjonell testing med MQ
Testere må validere følgende
- Programkonfigurasjon
- Køkonfigurasjon
- Meldingsformat
- Meldings korrekthet og fullstendighet
- Melding overføring
- Meldingsfeil når de oppstår
MQ i SOA
SQM er en pålitelig teknikk som kan brukes i SOA arkitektur for å kommunisere meldinger mellom applikasjoner. Siden meldingskommunikasjon er et nøkkelkonsept for å kjøre et ERP-system SQM gir den rette løsningen for det.
Det er uanstrengt og sikkert. Etter en tilnærming lik den som er vist i det tekniske eksemplet,
Etter en tilnærming lik den som er vist i det tekniske eksemplet, Meldingskø kan settes på flere applikasjoner for å hente data fra en eller flere apper.
Ved å ta en titt på applikasjonsarkitekturen kan mer informasjon fås av testere om tilkobling av meldingskommunikasjon mellom applikasjoner, E2E-meldingsflyt osv.
I alle fall kan MQ-team eller miljøteam gi ytterligere detaljer.
MG-simulator (som for eksempel IBM WebSphere ), som kan overføre meldingene fra inngående kø til en utgående kø, kan brukes til å slippe meldinger, overvåke dem og sjekke kvitteringen ved utgående kø med variable konfigurasjoner.
Mens du tester applikasjonene som kommuniserer meldinger gjennom Meldingskø , det er mange scenarier der meldinger ikke kan overføres fra ett program til et annet.
Noen av de vanlige problemene er nevnt nedenfor
- Skriv inn XML-meldingsformatproblemer som feil topptekst, metadataproblem, formatproblemer, dataproblemer osv.
- Feil køkonfigurasjon som feil kønavn, ledernavn, kanal, port osv.
- Meldingsstørrelse kan være mer enn forventet. Meldingen vil falle i feil / død kø-mappe.
- Problem med køserver, tilkoblingsproblem, ekstern køproblem osv. Fører til feil i meldingskommunikasjon.
Konklusjon
Når du tester apper som følger SOA , som for eksempel ERP-systemer , MQs er integrerte elementer, og som testere er det lurt å forstå grunnleggende detaljer om det samme.
Vi håper denne artikkelen har lykkes med å introdusere konseptet og åpnet veier for videre utforskning og mestring.
Om forfatter: Dette er en gjesteartikkel av Asish K Mallik.
Del dine kommentarer, spørsmål og innspill nedenfor.
Anbefalt lesing
- In-Depth Eclipse Tutorials For Beginners
- AWS Elastic Beanstalk Tutorial for Deploying .NET Web Application
- SVN til IBM Rational Team Concert Migration Tutorial
- IBM Rational Team Concert Defect Management Tool Tutorial
- Bygg applikasjon med én side ved hjelp av AngularJS (veiledning med eksempel)
- Prioritetskø I STL
- Java Reflection Tutorial med eksempler
- Hvordan spotte og simulere JMS IBM WebSphere MQ med Traffic Parrot [Hands on Review]