Kako kreirati testni paket i testni slučaj u SoapUI

⚡ Pametni sažetak

Izrada a SoapUI Projekt, Testni paket i Testni slučaj omogućuju strukturirano testiranje SOAP web servisa. Ovaj vodič objašnjava osnove SOAP protokola, WSDL uvoz, izvršavanje zahtjeva, postavljanje tvrdnji i analizu zapisnika odgovora za pouzdano funkcionalno i regresijsko testiranje.

  • 🧠 SOAP Foundation: SOAP je XML-bazirani, platformski neovisan protokol koji se prenosi putem HTTP-a i razmjenjuje poruke između različitih sustava.
  • 📁 Izrada projekta: Uvezite WSDL u novi SoapUI SOAP projekt za automatsko generiranje zahtjeva za uzorke za svaku operaciju.
  • 🗂️ Postavljanje testnog paketa: Desnom tipkom miša kliknite korijen projekta da biste dodali Test Suite koji grupira povezane testne slučajeve za organizirano izvršavanje.
  • 🧪 Koraci testnog slučaja: Dodajte korake SOAP zahtjeva, odaberite ciljnu operaciju i konfigurirajte standardne tvrdnje poput provjera usklađenosti sheme i SOAP grešaka.
  • 📊 Inspekcija odgovora: Koristite karticu RAW i okna Log (SoapUI Dnevnik, HTTP dnevnik, Dnevnik pogrešaka, Dnevnik memorije) za provjeru HTTP statusnih kodova i rješavanje problema sa zahtjevima.

Kako stvoriti testni paket i testni slučaj u SoapUI

Razumijevanje SOAP protokola

Prije stvaranja a SoapUI Testni slučaj, pomaže ponovno se osvrnuti na osnove SOAP protokola. Jasno razumijevanje načina na koji se SOAP zahtjevi i odgovori kreću između sustava olakšava korištenje. SoapUI za njihovo učinkovito testiranje.

SOAP je kratica za Jednostavni protokol za pristup objektuU nastavku su navedena osnovna svojstva SOAP protokola:

  • To je protokol temeljen na XML-u koji se koristi za komunikaciju između dva različita sustava.
  • Neovisan je o platformi i jeziku. Sustav je razvijen korištenjem Java može komunicirati s onim razvijenim u .NET-u.
  • SOAP zahtjevi i odgovori se prenose putem HTTP-a.

Naučite SOAP format poruke

SOAP poruka je običan XML dokument koji sadrži sljedeće elemente. Poruka može biti zahtjev ili odgovor.

FORMAT SOAP poruke
Format SOAP poruke

Nakon što su uspostavljene osnove SOAP-a, sljedeći korak je izgradnja SoapUI struktura projekta, testni paketi i testni slučajevi potrebni za validaciju određene web usluge. Upute u nastavku koriste SoapUI primjer projekta za stvaranje novog SOAP projekta.

Izrada SOAP projekta u SoapUI

SOAP projekt sadrži uvezenu WSDL definiciju zajedno sa svim generiranim uzorcima zahtjeva za svaku operaciju.

Korak 1: Ovisno o vrsti projekta, uvezite SOAP ili REST protokol. U ovom primjeru stvorite novi SOAP projekt.

Stvaranje novog SOAP projekta

Korak 2: Koristite sljedeći SOAP zahtjev URL: http://www.dneonline.com/calculator.asmx?wsdl

  1. Unesite Naziv projekta.
  2. Unesite putanju WSDL zahtjeva (u ovom slučaju, http://www.dneonline.com/calculator.asmx?wsdl).
  3. Kliknite OK.

Unesite naziv SOAP projekta i WSDL putanju

Bilješka:

  • Izradite primjer zahtjeva za sve operacije: Generira uzorak zahtjeva za svaku operaciju u WSDL-u. Omogućeno prema zadanim postavkama kada se unese WSDL adresa; može se poništiti ako nije potrebno.
  • Izradite testni paket za uvezeni WSDL: Dodaje a SoapUI Testni paket unutar projekta za uvezeni WSDL.
  • Relativni putevi: Sprema sve datoteke u odnosu na datoteku projekta radi lakše prenosivosti.

Korak 3: Nakon kreiranja SOAP projekta s gore navedenim WSDL-om, u projekt će biti uvezene dvije operacije.

Uvezeni SOAP projekt Operama

Korak 4: Proširite prvi zahtjev, kliknite desnom tipkom miša dodati, a zatim kliknite Novi zahtjev.

Dodaj novi zahtjev u SOAP projekt

Zatim kliknite OKSOAP zahtjev se prikazuje u XML formatu.

XML format SOAP zahtjeva

  1. Unesite vrijednosti za intA i intB.
  2. kliknite Procjena tipku.
  3. XML odgovora prikazuje se u desnom oknu.

Pošalji SOAP zahtjev i pogledaj odgovor

Zašto stvarati testne slučajeve umjesto izravnih zahtjeva?

Moguće je izravno poslati zahtjev za jednu operaciju, ali taj pristup brzo nailazi na ograničenja kada se mora testirati više ulaznih kombinacija. Na primjer, prebacivanje s 5+5 na 4+4 zahtijeva uređivanje zahtjeva svaki put. Testni paket s testnim slučajevima omogućuje ponovnu upotrebu svakog scenarija bez mijenjanja izvorne operacije.

Kako stvoriti testni paket u SoapUI

Testni paket je spremnik koji grupira povezane testne slučajeve. Slijedite korake u nastavku da biste ga stvorili.

Korak 1) Desnom tipkom miša kliknite na korijen projekta.

Unutar projekta, kreirajte Test Suite klikom desne tipke miša na korijen projekta.

Izradi testni paket u SoapUI - Desni klik na projekt

Korak 2) Unesite detalje testnog paketa.

Unesite naziv Test Suite-a i kliknite OK.

Unesite naziv testnog paketa

Korak 3) Provjerite kreirani paket testova.

Novi paket testova pojavljuje se u navigacijskom oknu kao što je prikazano dolje.

Provjerite kreirani testni paket

Korak 4) Otvorite paket za testiranje.

Prozor Test Suite otvara se u desnom oknu. Budući da još ne postoje testni slučajevi, sve opcije radnji ostaju onemogućene.

Otvori prazan prozor testnog paketa

Kako stvoriti testni slučaj u SoapUI

Testni slučajevi nalaze se unutar Test Suite-a i grupiraju pojedinačne korake testiranja koji izvršavaju web uslugu.

Korak 1: Unutar Test Suite-a, stvorite više testova tako da desnom tipkom miša kliknete Test Suite i odaberete Novi testni slučaj.

Izradi novi testni slučaj u SoapUI

Korak 2: Navedite naziv Testni slučaj i kliknite OK.

Unesite naziv testnog slučaja

Korak 3: Kreirani testni slučaj inicijalno ima nula koraka, kao što je prikazano dolje.

Testni slučaj s nula koraka

Bilješka: Testni slučaj se dodaje s nula koraka za svaku vrstu testa. Kako se koraci dodaju, brojevi u zagradama se automatski ažuriraju.

Koraci funkcionalnog testiranja pripadaju Ispitni koraci, koraci performansi ulaze u Ispitivanje opterećenjai sigurnosne provjere su pod Sigurnosni testovi.

Korak 4: Umetnite različite vrste koraka testiranja klikom desne tipke miša Ispitni koraci i odabirom odgovarajuće opcije. Za REST web uslugu odaberite REST testni zahtjev umjesto SOAP zahtjeva.

Umetni vrste koraka testa

Dodavanje koraka testiranja u SoapUI

Dodajte korak testiranja za validaciju uvezenog SOAP zahtjeva unutar testnog slučaja.

Korak 1: Dodaj novi korak tipa SOAP zahtjev kao što je prikazano u nastavku.

Dodaj korak testiranja SOAP zahtjeva

Korak 2: Unesite naziv koraka i kliknite OK.

Unesite naziv koraka testa

Korak 3: Pojavit će se dijalog za odabir operacije koju želite pozvati. Navedene su sve dostupne operacije za odabir.

  • Ovdje se pojavljuje mnogo operacija. Operacije su identične osim SOAP verzije: CalculatorSoap koristi SOAP verziju 1.1, dok CalculatorSoap12 koristi SOAP verziju 1.2.
  • Verzija u ovom scenariju nije bitna, pa se može odabrati bilo koja.

    Odaberite SOAP Operacija za prizivanje

  • Nakon odabira operacije, kliknite OK.

    potvrditi OperaOdabir

Korak 4: Prilikom dodavanja testnog slučaja mogu se primijeniti standardne tvrdnje. Tvrdnje, koje se nazivaju i kontrolne točke ili točke validacije, obrađene su u sljedećem vodiču.

Sljedeće kontrolne točke mogu se dodati prilikom stvaranja testnog slučaja. Primjer u nastavku stvara testni slučaj bez omogućenih točaka validacije.

Standard SoapUI tvrdnje

  1. Provjerava je li odgovorna poruka SOAP nakon što se test pokrene.
  2. Provjerava je li shema odgovora valjana.
  3. Provjerava sadrži li SOAP odgovor element FAULT.

Korak 5: Kada se kreira testni slučaj, XML zahtjeva se pojavljuje kao što je prikazano u nastavku. Struktura XML-a objašnjena je na snimci stanja.

Zahtjev za XML strukturu

Korak 6: Broj koraka testa sada se povećava na jedan jer je dodan jedan korak. Dodavanje koraka testa opterećenja i sigurnosti automatski će povećati njihove odgovarajuće brojače.

Povećanje brojača koraka testa

Ručno slanje zahtjeva i čitanje odgovora u SoapUI

Korak 1: U donjem primjeru zbrajaju se dva cijela broja.

  • intA — 5
  • intB — 5

Sljedeći:

  1. Unesite ove unose umjesto upitnika u XML zahtjevu.
  2. Nakon ažuriranja odgovarajućih XML oznaka, kliknite Pošaljite zahtjev kako bi provjerio odgovor.

Ručno slanje zahtjeva s intA i intB

Korak 2: Nakon što je zahtjev poslan, web poslužitelj obrađuje web uslugu i vraća odgovor, kao što je prikazano u nastavku.

Odgovor potvrđuje da je 5 plus 5 jednako 10.

SOAP odgovor prikazuje rezultat dodavanja

Razumijevanje SOAP odgovora i panela za zapisivanje

Kao što je ranije navedeno, SOAP poruke se prenose putem HTTP-a. Pregled RAW poruka pomaže razjasniti kako se SOAP zahtjev i odgovor prenose putem HTTP-a.

Korak 1: kliknite RAW Kartica u SoapUI prozor zahtjeva.

  1. Zahtjev se šalje web poslužitelju, pa se koristi HTTP POST metoda.
  2. SOAP zahtjev putuje u tijelu HTTP poruke.

SOAP zahtjev RAW kartica

Korak 2: Sada kliknite gumb RAW Kartica u SoapUI prozor odgovora kako bi se razumjelo kako se odgovor dostavlja putem HTTP-a.

  1. Nakon što je zahtjev obrađen, prikazuje se HTTP kod odgovora (200), što ukazuje na uspjeh.
  2. SOAP odgovor se vraća klijentu unutar tijela HTTP poruke.

SOAP odgovor RAW kartica s HTTP 200

Donja tablica sažima uobičajene HTTP kodove odgovora za brzo otklanjanje pogrešaka.

HTTP Code Description
1xx informativno: Zahtjev primljen, obrada se nastavlja.
2xx Uspjeh: Radnja uspješno primljena, shvaćena i prihvaćena.
3xx Preusmjeravanje: Za dovršetak zahtjeva potrebne su daljnje radnje.
4xx Pogreška klijenta: Zahtjev sadrži lošu sintaksu ili se ne može ispuniti.
5xx Pogreška poslužitelja: Poslužitelj nije uspio ispuniti naizgled valjan zahtjev.

Korak 3: Prozor Test Case također prikazuje dodatne metapodatke za zahtjev i odgovor.

Metapodaci prozora testnog slučaja

  1. Označava da NEMA zaglavlja u poslanom zahtjevu.
  2. Označava da NEMA priloga u zahtjevu koji se šalje web poslužitelju.
  3. Označava 10 stavki zaglavlja u odgovoru, vidljivih klikom.
  4. Označava da u odgovoru nema privitaka.

Okno zapisnika

Okno zapisnika prikazuje sve informacije razmijenjene između klijenta i poslužitelja. Najčešće korištene kartice zapisnika opisane su u nastavku.

SoapUI Kartice okna zapisnika

SoapUI Prijava: Prikazuje informacije o odgovoru s web poslužitelja. Isti podaci pohranjeni su u datoteci soapui.log unutar SoapUI direktorij bin.

SoapUI Kartica zapisnika

HTTP zapisnik: Prikazuje sve prijenose HTTP paketa. Sve informacije vidljive u RAW prikazu također se bilježe u HTTP zapisniku.

Kartica HTTP zapisnika

Zapisnik pogrešaka: Prikazuje sve pogreške koje su se pojavile tijekom cijele projektne sesije. Iste informacije pohranjene su u soapui-errors.log unutar SoapUI direktorij bin.

Zapisnik memorije: Prati potrošnju memorije i prikazuje je kao grafikon. To je korisno prilikom izvođenja operacija koje intenzivno koriste memoriju.

Kartica zapisnika memorije

Nakon što su postavljeni Testni paket, Testni slučaj i Testni korak te primljen uspješan odgovor, sljedeći korak je validacija odgovora. Vrste tvrdnji obrađene su u sljedećem vodiču.

Pitanja i odgovori

Testni paket je kontejner koji grupira povezane testne slučajeve unutar SoapUI Projekt. Testni slučaj je pojedinačni scenarij koji sadrži jedan ili više testnih koraka kao što su SOAP zahtjev, REST zahtjev ili tvrdnje.

Da. SoapUI podržava SOAP i REST testiranje. Prilikom izrade novog projekta odaberite Novi SOAP projekt za WSDL-bazirane usluge ili Novi REST projekt za REST API-je. Koraci testiranja uključuju REST zahtjev za testiranje, JDBC zahtjev i Groovy Skripta.

Otvorite Test Suite i kliknite zeleni gumb za reprodukciju. SoapUI pokreće sve testne slučajeve redoslijedom kojim se pojavljuju. Također možete konfigurirati paralelno ili sekvencijalno izvršavanje pod karticom Svojstva testnog paketa.

Da. Koristite korak Svojstva, korak Prijenos svojstva ili korak Izvor podataka (SoapUI Pro) za upravljanje više ulaza kroz isti testni slučaj. Ovo je korisno za testiranje temeljeno na podacima za mnoge kombinacije ulaza.

AI asistenti mogu čitati WSDL ili OpenAPI specifikaciju i predlagati realistične kombinacije ulaza, rubne slučajeve i obrasce tvrdnji. Ti se prijedlozi mogu izvesti kao SoapUI XML ili Groovy skripte, smanjujući ručni napor pri izradi velikih testnih paketa.

Da. Alati umjetne inteligencije mogu parsirati SoapUI Unosi u zapisnik i HTTP zapisnik, grupiranje ponovljenih pogrešaka i isticanje vjerojatnih uzroka kao što su neusklađenosti shema ili neuspjesi autentifikacije. To ubrzava trijažu tijekom regresijskih ciklusa i velikih noćnih izvršavanja.

Sažmite ovu objavu uz: