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) Nรฅ 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.

Oppsummer dette innlegget med: