Hvordan lage Test Suite & Test Case i SoapUI

Forstå SOAP-protokollen

Før vi lager en SOAPUI-testsak, la oss forstå grunnleggende om SOAP-protokollen. Dette vil hjelpe deg å bruke SOAP UI til å teste SOAP-forespørsler og svare effektivt.

SOAP står for Enkel protokoll for tilgangsobjekter. Nedenfor er egenskapene til en SOAP-protokoll.

  • Det er en XML-basert protokoll for kommunikasjon mellom to forskjellige systemer.
  • Det er en plattform og språkuavhengig. Derfor et system utviklet ved hjelp av Java kan kommunisere med et system utviklet i.NET.
  • SOAP-forespørsler/svar transporteres via HTTP.

Lær SOAP Message FORMAT

En SOAP-melding er et vanlig XML-dokument som inneholder følgende elementer. Melding kan enten være en forespørselsmelding eller en svarmelding.

SOAP Message FORMAT
SOAP Message FORMAT

Etter å ha satt opp arbeidsområdet som vi hadde utført i den siste opplæringen, må vi lage SoapUI-prosjektstruktur, testsuiter, testcases for å teste en gitt webtjeneste. La oss forstå et SoapUI-prosjekteksempel for å lage et nytt SOAP-prosjekt.

Opprette et SOAP-prosjekt

Trinn 1) Nå, avhengig av prosjektet, må vi importere SOAP/REST-protokollen. Vi vil lage et nytt SOAP-prosjekt.

Opprette et nytt SOAP-prosjekt

Trinn 2) Vi vil bruke følgende SOAP-forespørsel http://www.dneonline.com/calculator.asmx?wsdl

  1. Skriv inn prosjektnavnet
  2. Skriv inn banen til WSDL-forespørselen. I dette tilfellet http://www.dneonline.com/calculator.asmx?wsdl
  3. klikk OK

Opprette et SOAP-prosjekt

OBS:

  • Opprette prøveforespørsel for alle operasjoner? Den oppretter en prøveforespørsel for alle tilgjengelige operasjoner i den gitte WSDL. Så snart du skriver inn WSDL-adressen, blir dette alternativet merket av automatisk. Du kan fjerne merket for den.
  • Opprett en testpakke for den importerte WSDL: Oppretter en SoapUI-testpakke i prosjektet for den importerte WSDL.
  • Relative veier: Den gjør det mulig for brukeren å lagre alle filene i forhold til prosjektfilen.

Trinn 3) Ved å opprette SOAP-prosjektet med nevnte WSDL, vil vi kunne se at det er to operasjoner som vil bli importert inn i prosjektet.

Opprette et SOAP-prosjekt

Trinn 4) Utvid den første forespørselen og høyreklikk på "Legg til". Klikk deretter på 'Ny forespørsel'.

Opprette et SOAP-prosjekt

Klikk deretter på 'OK'. Den vil vise SOAP-forespørselen i XML-format

Opprette et SOAP-prosjekt

  1. Skriv inn 'intA' og 'intB'
  2. Klikk på send-knappen
  3. Respons-XML vises på høyre side.

Opprette et SOAP-prosjekt

Du lurer kanskje på hvorfor lage testcases? Når du kan teste nettjeneste direkte her...

Vel, du kan sende en forespørsel om én operasjon. Hva med andre? Hvor mange kombinasjoner av innganger for tillegg kan du gjøre med denne operasjonen? Du må redigere forespørselen for hver kombinasjon.

For eksempel: Hvis du vil legge til fra 4 og 4 i stedet for 5 og 5... Du må redigere operasjonen på nytt. Så man må lage en testpakke/cases for å få testet alle mulige scenarier uten å måtte redigere selve operasjonen direkte.

Hvordan lage testsuite i SoapUI

Nedenfor er trinnene for å lage Test Suite i SoapUI:

Trinn 1) Høyreklikk på roten til prosjektet

Innenfor prosjektet kan testere lage en testpakke ved å høyreklikke på roten til prosjektet.

Lag Test Suite i SoapUI

Trinn 2) Skriv inn Testsuite-detaljene

Vi må skrive inn navnet på testpakken og trykke OK.

Lag Test Suite i SoapUI

Trinn 3) Bekreft den opprettede testpakken

Den opprettede testpakken vises i navigatorruten som vist nedenfor.

Lag Test Suite i SoapUI

Trinn 4) Åpne testpakken

Test Suite-vinduet åpnes i høyre rute. Som vi nettopp har laget, er det INGEN SoapUI-testtilfeller. Derfor er alle alternativer deaktivert.

Lag Test Suite i SoapUI

Hvordan lage testcase i SoapUI

Her er en trinnvis prosess for å lage en testcase i SoapUI:

Trinn 1) Innenfor en testpakke kan vi lage flere tester ved å høyreklikke på "testpakken" og velge "Ny testcase".

Opprett testcase i SoapUI

Trinn 2) Angi navnet på Testsak og klikk "OK".

Opprett testcase i SoapUI

Trinn 3) Den opprettede testsaken har null trinn som vist nedenfor.

Opprett testcase i SoapUI

Merknader: Vi kan se at testtilfellet er lagt til med null testtrinn for alle typer tilgjengelige tester. Ved å legge til testtrinnene, vil tallene i parentes endres automatisk.

Det funksjonelle testtrinnet skal gå inn i "Testtrinn", mens et ytelsestesttrinn skal gå inn i "Load Test" og et sikkerhetstesttrinn skal gå inn i "sikkerhetstester".

Trinn 4) Vi kan sette inn en rekke testtrinn ved å utføre et høyreklikk på testtrinn og velge et passende testtrinn som vist nedenfor. Så hvis du skulle teste en REST-webtjeneste, ville du velge REST-testforespørselen.

Opprett testcase i SoapUI

Legge til et testtrinn i SoapUI

La oss nå legge til et testtrinn for å validere den importerte SOAP-testforespørselen:

Trinn 1) Legg til et nytt trinn 'SOAP Request' som vist nedenfor.

Legge til et testtrinn i SoapUI

Trinn 2) Skriv inn trinnnavnet og klikk OK.

Legge til et testtrinn i SoapUI

Trinn 3) Når du klikker "OK", dukker det opp en dialogboks for å velge operasjonen som skal startes. Alle operasjonene er oppført, og brukeren kan velge operasjonen de ønsker å starte.

  • Det er mange operasjoner som vil bli listet opp. De Operasjonene er de samme bortsett fra SOAP-versjonen som brukes. CalculatorSoap – bruker SOAP versjon 1.1, mens CalculatorSoap12 – bruker SOAP versjon 1.2
  • Versjonen spiller ingen rolle for oss i denne sammenhengen. Derfor kan du velge den du ønsker.

    Legge til et testtrinn i SoapUI

  • Når du har valgt operasjonen, klikker du "Ok"

    Legge til et testtrinn i SoapUI

Trinn 4) Mens vi legger til en testcase, kan vi legge til standardpåstander. Påstander også kalt sjekkpunkter/valideringspunkter som vi skal behandle i detalj i neste veiledning.

Vi kan legge til følgende sjekkpunkter/påstander mens vi lager testcase. La oss lage en testcase med alternativet som betyr å lage testtrinn UTEN noen av valideringspunktene nedenfor

Legge til et testtrinn i SoapUI

  1. Verifiserer om svarmeldingen er SOAP, ved utføring av testen.
  2. Verifiserer om svarskjemaet er gyldig.
  3. Verifiserer om SOAP-svaret inneholder FEIL.

Trinn 5) Når testsaken er opprettet, vises XML-forespørselen nedenfor. Strukturen til XML er forklart i øyeblikksbildet nedenfor.

Legge til et testtrinn i SoapUI

Trinn 6) Antall testtrinn økes nå til ett ettersom vi nettopp har lagt til ett testtrinn. På samme måte, ved å legge til trinn for belastning og sikkerhetstester, vil det tilsvarende antallet automatisk økes basert på antall trinn som er lagt til.

Legge til et testtrinn i SoapUI

Sender forespørsel manuelt og leser svar i SoapUI

Trinn 1) Vi ønsker å legge til to heltall.

  • intA – 5
  • intB – 5

Neste,

  1. Vi må legge inn disse inndataene i stedet for spørsmålstegnet som vil bli sendt som forespørsels-XML.
  2. Etter å ha skrevet inn disse verdiene i de tilsvarende XML-taggene, klikker du på «send forespørsel»-knappen for å sjekke svaret.

Sender forespørsel manuelt og leser svar

Trinn 2) Ved innsending av en forespørsel behandles webtjenesteforespørselen av webserveren og sender tilbake et svar som vist nedenfor.

Ved å lese svaret kan vi konkludere med at 5 pluss 5 er 10.

Sender forespørsel manuelt og leser svar

Forstå såperesponsen og loggpanelene

Som forklart i begynnelsen av denne SoapUI-testveiledningen, transporteres SOAP-meldingene via HTTP-protokollen. La oss ta en titt på RAW-meldingene. Dette vil hjelpe oss å finne ut hvordan SOAP-forespørselen og svaret ble transportert av HTTP.

Trinn 1) Klikk på "RAW"-fanen i begge SOAP-UI-forespørselsvinduene.

  1. Forespørselen sendes til webserveren. Derfor brukes POST-metoden til Http.
  2. SOAP-forespørselen transporteres i hoveddelen av Http-meldingen.

Såperespons og loggpaneler

Trinn 2) klikk på 'RAW'-fanen i SOAP-UI Response Window for å forstå hvordan svaret sendes via HTTP.

  1. Etter å ha behandlet forespørselen, vises Http-svarkoden (200), som betyr at den er vellykket. Nettserveren har behandlet den vellykket.
  2. SOAP-svaret sendes tilbake til klienten som en del av hoveddelen av HTTP-meldingen.

Såperespons og loggpaneler

Et raskt øyeblikksbilde av HTTP-responskodene for enkel forståelse og feilsøking. Tabellen nedenfor vil hjelpe deg med å feilsøke basert på HTTP-koden mottatt fra webserveren.

Http-kode Tekniske beskrivelser
1xx: Informasjons- Dette betyr en mottatt forespørsel og fortsetter prosess.
2xx: Suksess - Handlingen ble vellykket mottatt, forstått og akseptert.
3xx: Omdirigering – Dette betyr at ytterligere tiltak må iverksettes for å fullføre forespørselen.
4xx: Klientfeil – Dette betyr at forespørselen inneholder dårlig syntaks eller ikke kan oppfylles
5xx: Serverfeil – Serveren klarte ikke å oppfylle en tilsynelatende gyldig forespørsel

Trinn 3) La oss forstå den andre informasjonen som vises i testcase-vinduet.

Såperespons og loggpaneler

  1. Representer INGEN overskrift i forespørselen som sendes
  2. Representerer INGEN vedlegg i forespørselen som sendes til webserveren.
  3. Representerer 10 overskriftsinformasjon og den samme vises når du klikker på den.
  4. Angir at det ikke er noen vedlegg fra svarmeldingen.

LOGGRUTE:

Loggruten har fullstendig informasjon om transaksjonen mellom klienten og serveren. Brukere vil kunne se fanene i Logg-ruten som vist nedenfor. Vi vil diskutere de mest brukte loggrutene når du arbeider med SOAP-UI.

LOGGRUTE

SoapUI-logg – Viser svarinformasjonen fra webserveren. Den samme informasjonen er lagret i soapui.log-filen til SOAP-UI installert mappe under 'bin'-katalogen.

SoapUI-logg

Http-logg – Viser all HTTP-pakkeoverføring. All informasjon i 'RAW' vises i HTTP-loggen.

Http-logg

Feillogg – Feillogg viser alle feilene vi har støtt på under hele prosjektøkten. Den samme informasjonen er tilgjengelig i 'soapui-errors.log' som finnes i 'bin'-katalogen til SOAP UI installert plassering.

Minnelogg – Denne kategorien overvåker minneforbruket og viser det i form av diagrammet som vist nedenfor. Det er veldig nyttig når det er en minneintensiv operasjon som utføres.

Minnelogg

Nå som vi har laget en testpakke, testcase, testtrinn og fått et svar, er neste trinn å validere svaret. Vi vil ta for oss typer påstander i neste veiledning.