Sådan opretter du Test Suite & Test Case i SoapUI
Forståelse af SOAP-protokollen
Før vi opretter en SOAPUI-testcase, lad os forstå det grundlæggende om SOAP-protokollen. Dette vil hjælpe dig med at bruge SOAP UI til at teste SOAP-anmodninger og svare effektivt.
SOAP står for Simpel objektadgangsprotokol. Nedenfor er egenskaberne for en SOAP-protokol.
- Det er en XML-baseret protokol til kommunikation mellem to forskellige systemer.
- Det er en platform og sproguafhængig. Derfor er et system udviklet vha Java kan kommunikere med et system udviklet i.NET.
- SOAP-anmodninger/svar transporteres via HTTP.
Lær SOAP Message FORMAT
En SOAP-meddelelse er et almindeligt XML-dokument, der indeholder følgende elementer. Besked kan enten være en anmodningsmeddelelse eller en svarmeddelelse.

Efter opsætning af arbejdsområdet, som vi havde udført i den sidste tutorial, skal vi oprette SoapUI projektstruktur, testsuiter, testcases for at teste en given webservice. Lad os forstå et SoapUI-projekteksempel for at skabe et nyt SOAP-projekt.
Oprettelse af et SOAP-projekt
Trin 1) Nu, afhængigt af projektet, skal vi importere SOAP/REST-protokollen. Vi vil oprette et nyt SOAP-projekt.
Trin 2) Vi vil gøre brug af følgende SOAP-anmodning http://www.dneonline.com/calculator.asmx?wsdl
- Indtast projektets navn
- Indtast stien til WSDL-anmodningen. I dette tilfælde http://www.dneonline.com/calculator.asmx?wsdl
- klik på OK
Bemærk:
- Vil du oprette prøveanmodning for alle operationer? Det opretter en prøveanmodning for alle de tilgængelige operationer i den givne WSDL. Så snart du indtaster WSDL-adressen, afkrydses denne mulighed automatisk. Du kan fjerne markeringen i det.
- Opret en testpakke til den importerede WSDL: Opretter en SoapUI-testpakke i projektet for den importerede WSDL.
- Relative veje: Det gør det muligt for brugeren at gemme alle filerne i forhold til projektfilen.
Trin 3) Ved oprettelse af SOAP-projektet med ovennævnte WSDL, vil vi kunne se, at der er to operationer, der vil blive importeret til projektet.
Trin 4) Udvid den første anmodning, og højreklik på 'Tilføj'. Klik derefter på 'Ny anmodning'.
Klik derefter på 'OK'. Det vil vise SOAP-anmodningen i XML-format
- Indtast 'intA' og 'intB'
- Klik på knappen Send
- Svar XML vil blive vist i højre side rude.
Du undrer dig måske over, hvorfor oprette testcases? Når du direkte kan teste Webservice her...
Nå, du kan sende en anmodning om én operation. Hvad med andre? Hvor mange kombinationer af input til tilføjelser kan du lave ved at bruge denne handling? Du skal redigere anmodningen for hver enkelt kombination.
For eksempel: Hvis du vil tilføje fra 4 og 4 i stedet for 5 og 5... Du skal redigere handlingen igen. Så man skal oprette en testsuite/cases for at få testet alle mulige scenarier uden at skulle redigere selve operationen direkte.
Sådan opretter du Test Suite i SoapUI
Nedenfor er trinene til at oprette Test Suite i SoapUI:
Trin 1) Højreklik på roden af projektet
Inden for projektet kan testere oprette en testpakke ved at udføre et højreklik på projektets rod.
Trin 2) Indtast detaljerne for testpakken
Vi skal indtaste navnet på testpakken og trykke på OK.
Trin 3) Bekræft den oprettede testpakke
Den oprettede testpakke vises i navigatorruden som vist nedenfor.
Trin 4) Åbn testpakken
Test Suite-vinduet åbnes i højre rude. Som vi lige har oprettet, er der INGEN SoapUI-testcases. Derfor er alle muligheder deaktiveret.
Sådan opretter du testcase i SoapUI
Her er en trinvis proces til at oprette en testcase i SoapUI:
Trin 1) Inden for en testpakke kan vi oprette flere tests ved at højreklikke på 'testpakken' og vælge 'Ny testcase'.
Trin 2) Angiv navnet på Test sag og klik på 'OK'.
Trin 3) Den oprettede testcase har nul trin som vist nedenfor.
Bemærk: Vi kan se, at testcasen er tilføjet med nul testtrin for alle mulige tilgængelige tests. Ved tilføjelse af testtrinene ændres tallene i parentesen automatisk.
Det funktionelle testtrin skal gå ind i 'Testtrin', mens et præstationstesttrin skal gå ind i 'Load Test' og et sikkerhedstesttrin skal gå ind i 'sikkerhedstests'.
Trin 4) Vi kan indsætte en række testtrin ved at udføre et højreklik på testtrin og vælge et passende testtrin som vist nedenfor. Så hvis du skulle teste en REST-webservice, ville du vælge REST-testanmodningen.
Tilføjelse af et testtrin i SoapUI
Lad os nu tilføje et testtrin for at validere den importerede SOAP-testanmodning:
Trin 1) Tilføj et nyt trin 'SOAP-anmodning' som vist nedenfor.
Trin 2) Indtast trinnavnet, og klik på OK.
Trin 3) Når du klikker på 'OK', popper en dialog op for at vælge den handling, der skal startes. Alle operationer er listet, og brugeren kan vælge den operation, som de ønsker at påberåbe.
- Der er mange operationer, der vil blive opført. De Operationerne er de samme undtagen den anvendte SOAP-version. CalculatorSoap – bruger SOAP version 1.1, mens CalculatorSoap12 – bruger SOAP version 1.2
- Versionen betyder ikke noget for os i denne sammenhæng. Derfor kan du vælge den efter eget valg.
- Når du har valgt handlingen, skal du klikke på 'Ok'
Trin 4) Mens vi tilføjer en testcase, kan vi tilføje standardpåstande. Påstande kaldes også checkpoints/valideringspunkter, som vi vil behandle i detaljer i den næste tutorial.
Vi kan tilføje følgende kontrolpunkter/påstande, mens vi opretter testcase. Lad os oprette en testcase med muligheden, som betyder at oprette testtrin UDEN nogen af nedenstående valideringspunkter
- Verificerer, om svarmeddelelsen er SOAP, ved udførelse af testen.
- Bekræfter, om svarskemaet er gyldigt.
- Verificerer, om SOAP-svaret indeholder FEJL.
Trin 5) Ved oprettelse af testcasen vises anmodningens XML nedenfor. Strukturen af XML er forklaret i nedenstående snapshot.
Trin 6) Antallet af testtrin er nu øget til et, da vi lige har tilføjet et testtrin. På samme måde, ved tilføjelse af belastnings- og sikkerhedstesttrin, vil det tilsvarende antal automatisk blive forøget baseret på antallet af tilføjede trin.
Sender anmodning manuelt og læser svar i SoapUI
Trin 1) Vi vil gerne tilføje to heltal.
- intA – 5
- intB – 5
Dernæst
- Vi skal indtaste disse input i stedet for spørgsmålstegnet, som vil blive sendt som anmodnings-XML.
- Når du har indtastet disse værdier i de tilsvarende XML-tags, skal du klikke på knappen 'Send anmodning' for at kontrollere svaret.
Trin 2) Ved indsendelse af en anmodning behandles webserviceanmodningen af webserveren og sender et svar tilbage som vist nedenfor.
Ved at læse svaret kan vi konkludere, at 5 plus 5 er 10.
Forståelse af sæberespons og logpaneler
Som forklaret i begyndelsen af denne SoapUI-testøvelse, transporteres SOAP-meddelelserne via HTTP-protokol. Lad os tage et kig på RAW-meddelelserne. Dette vil hjælpe os med at lære, hvordan SOAP-anmodningen og svaret blev transporteret af HTTP.
Trin 1) Klik på fanen 'RAW' i begge SOAP-UI-anmodningsvinduer.
- Anmodningen sendes til webserveren. Derfor bruges POST-metoden for Http.
- SOAP-anmodningen transporteres i hovedteksten i Http-meddelelsen.
Trin 2) Nu klik på fanen 'RAW' i SOAP-UI Response Window for at forstå, hvordan svaret sendes via HTTP.
- Efter behandling af anmodningen vises HTTP-svarkoden (200), hvilket betyder, at det er en succes. Webserveren har behandlet den med succes.
- SOAP-svaret sendes tilbage til klienten som en del af HTTP-meddelelsens brødtekst.
Et hurtigt snapshot af HTTP-svarkoderne for nem forståelse og fejlretning. Nedenstående tabel hjælper dig med at fejlfinde baseret på HTTP-koden modtaget fra webserveren.
| Http kode | Beskrivelse |
|---|---|
| 1xx: | Oplysende – Det betyder en modtaget anmodning og en fortsat proces. |
| 2xx: | Succes – Handlingen blev modtaget, forstået og accepteret. |
| 3xx: | Omdirigering – Det betyder, at der skal træffes yderligere foranstaltninger for at fuldføre anmodningen. |
| 4xx: | Klientfejl – Det betyder, at anmodningen indeholder dårlig syntaks eller ikke kan opfyldes |
| 5xx: | Server Fejl - Serveren kunne ikke opfylde en tilsyneladende gyldig anmodning |
Trin 3) Lad os forstå de andre oplysninger, der vises i testcasevinduet.
- Repræsenter INGEN overskrift i den anmodning, der sendes
- Repræsenterer INGEN vedhæftede filer i anmodningen, der sendes til webserveren.
- Repræsenterer 10 overskriftsoplysninger, og de samme vises ved at klikke på den.
- Angiver, at der ikke er nogen vedhæftede filer fra svarmeddelelsen.
LOGRUDE:
Logruden har fuldstændige oplysninger om transaktionen mellem klienten og serveren. Brugere vil kunne se fanerne i Log-ruden som vist nedenfor. Vi vil diskutere de mest almindeligt anvendte logruder, når du arbejder med SOAP-UI.
SoapUI log – Viser svaroplysningerne fra webserveren. Den samme information er gemt i filen soapui.log i SOAP-UI installerede mappe under 'bin'-mappen.
Http log – Viser al HTTP-pakkeoverførsel. Alle oplysninger i 'RAW' vises i HTTP-log.
Fejllog - Fejllog viser alle de fejl, vi er stødt på under hele projektsessionen. De samme oplysninger er tilgængelige i 'soapui-errors.log', der findes i 'bin'-mappen på SOAP UI-installationen.
Hukommelseslog – Denne fane overvåger hukommelsesforbruget og viser det i form af diagrammet som vist nedenfor. Det er virkelig nyttigt, når der udføres en hukommelsesintensiv operation.
Nu hvor vi har oprettet en testsuite, testcase, testtrin og fået et svar, er næste trin at validere svaret. Vi vil behandle typer af påstande i den næste tutorial.





























