Hogyan hozzunk létre tesztcsomagot és tesztesetet a SoapUI

⚡ Okos összefoglaló

Sikeres SoapUI A Project, Test Suite és Test Case lehetővé teszi a strukturált SOAP webszolgáltatás-tesztelést. Ez az útmutató ismerteti a SOAP protokoll alapjait, a WSDL importálást, a kérések végrehajtását, az állítások beállítását és a válasznapló-elemzést a megbízható funkcionális és regressziós teszteléshez.

  • 🧠 SOAP Foundation: A SOAP egy XML-alapú, platformfüggetlen protokoll, amely HTTP-n keresztül továbbítódik, és üzeneteket cserél különböző rendszerek között.
  • 📁 Projekt létrehozása: Importálja a WSDL-t egy új fájlba SoapUI SOAP Project, amely minden művelethez automatikusan generál minta kéréseket.
  • 🗂️ Tesztcsomag beállítása: Kattintson a jobb gombbal a projekt gyökerére egy tesztcsomag hozzáadásához, amely csoportosítja a kapcsolódó teszteseteket a rendszerezett végrehajtás érdekében.
  • 🧪 Teszteset lépései: Adjon hozzá SOAP kérési lépéseket, válassza ki a célműveletet, és konfiguráljon szabványos állításokat, például a sémamegfelelőséget és a SOAP hibaellenőrzéseket.
  • 📊 Válaszvizsgálat: Használja a RAW lapot és a Napló paneleket (SoapUI Napló, HTTP napló, Hibanapló, Memórianapló) a HTTP állapotkódok érvényesítéséhez és a kérések hibaelhárításához.

Tesztkészlet és teszteset létrehozása SoapUI

A SOAP protokoll megértése

Létrehozása előtt a SoapUI Tesztesetként segít újra áttekinteni a SOAP protokoll alapjait. A SOAP kérések és válaszok rendszerek közötti mozgásának világos megértése megkönnyíti a használatát. SoapUI hogy hatékonyan tesztelhessék őket.

A SOAP jelentése Egyszerű objektumelérési protokollAz alábbiakban a SOAP protokoll fő tulajdonságai találhatók:

  • Ez egy XML alapú protokoll, amelyet két különböző rendszer közötti kommunikációra használnak.
  • Platform- és nyelvfüggetlen. Egy rendszer, amelyet a következővel fejlesztettek ki: Java képes kommunikálni egy .NET-ben fejlesztettel.
  • A SOAP kérések és válaszok HTTP-n keresztül kerülnek továbbításra.

Ismerje meg a SOAP üzenetformátumot

A SOAP üzenet egy szokványos XML dokumentum, amely a következő elemeket tartalmazza. Az üzenet lehet kérés vagy válasz.

SZAPPAN Üzenet FORMÁTUM
SOAP üzenetformátum

Miután a SOAP alapjai a helyükön vannak, a következő lépés a következő felépítése: SoapUI projektstruktúra, tesztkészletek és tesztesetek, amelyek egy adott webszolgáltatás validálásához szükségesek. Az alábbi útmutató egy SoapUI projekt példa egy új SOAP projekt létrehozásához.

SOAP projekt létrehozása SoapUI

A SOAP projekt tárolja az importált WSDL definíciót, valamint az egyes műveletekhez generált összes mintakérést.

Lépés 1: A projekt típusától függően importálja a SOAP vagy a REST protokollt. Ebben a példában hozzon létre egy új SOAP projektet.

Új SOAP projekt létrehozása

Lépés 2: Használja a következő SOAP kérést URL: http://www.dneonline.com/calculator.asmx?wsdl

  1. Adja meg a Projekt nevét.
  2. Adja meg a WSDL kérés elérési útját (ebben az esetben http://www.dneonline.com/calculator.asmx?wsdl).
  3. Kattints OK.

Adja meg a SOAP projekt nevét és a WSDL elérési útját

Jegyzet:

  • Minta kérés létrehozása az összes művelethez: Minta kérést generál a WSDL minden műveletéhez. Alapértelmezés szerint engedélyezve van a WSDL cím megadásakor; szükség esetén eltávolítható a jelölőnégyzet.
  • Hozz létre egy tesztcsomagot az importált WSDL-hez: Hozzáadja a SoapUI Tesztcsomag a projekten belül az importált WSDL-hez.
  • Relatív útvonalak: A könnyű hordozhatóság érdekében a projektfájlhoz viszonyított összes fájlt menti.

Lépés 3: Miután létrehoztuk a SOAP projektet a fenti WSDL-lel, két művelet importálásra kerül a projektbe.

Importált SOAP projekt OperaTIONS

Lépés 4: Bontsa ki az első kérést, kattintson a jobb gombbal hozzáad, majd kattintson a gombra Új kérés.

Új kérés hozzáadása a SOAP projekthez

Ezután kattintson OKA SOAP kérés XML formátumban jelenik meg.

SOAP kérés XML formátuma

  1. Adja meg a következő értékeit intA és a intB.
  2. Kattintson az Küldés gombot.
  3. A válasz XML-je megjelenik a jobb oldali panelen.

SOAP kérés beküldése és válasz megtekintése

Miért érdemes teszteseteket létrehozni közvetlen kérések helyett?

Lehetséges közvetlenül egyetlen műveletre vonatkozó kérést küldeni, de ez a megközelítés gyorsan korlátokba ütközik, amikor több bemeneti kombinációt kell tesztelni. Például az 5+5-ről 4+4-re való váltás minden alkalommal a kérés szerkesztését igényli. A tesztesetekkel rendelkező tesztcsomag lehetővé teszi, hogy minden forgatókönyv újrafelhasználható maradjon az eredeti művelet megváltoztatása nélkül.

Hogyan hozzunk létre egy tesztcsomagot? SoapUI

A tesztcsomag egy olyan konténer, amely a kapcsolódó teszteseteket csoportosítja. Kövesse az alábbi lépéseket egy létrehozásához.

1. lépés) Kattintson a jobb gombbal a projekt gyökerére.

A projekten belül hozz létre egy tesztcsomagot a projekt gyökerére jobb gombbal kattintva.

Tesztkészlet létrehozása itt: SoapUI - Jobb klikk projekt

2. lépés) Adja meg a tesztcsomag adatait.

Írja be a tesztcsomag nevét, majd kattintson a OK.

Adja meg a tesztcsomag nevét

3. lépés) Ellenőrizze a létrehozott tesztcsomagot.

Az új tesztcsomag az alább látható módon jelenik meg a navigátor panelen.

Létrehozott tesztcsomag ellenőrzése

4. lépés) Nyissa meg a tesztcsomagot.

A Tesztcsomag ablaka megnyílik a jobb oldali panelen. Mivel még nincsenek tesztesetek, minden műveleti lehetőség letiltva marad.

Üres tesztcsomag ablak megnyitása

Hogyan hozzunk létre egy tesztesetet a SoapUI

A tesztesetek egy tesztkészleten belül helyezkednek el, és csoportosítják az egyes tesztlépéseket, amelyek egy webszolgáltatást gyakorolnak.

Lépés 1: Egy tesztcsomagon belül több teszt létrehozásához kattintson a jobb gombbal a tesztcsomagra, és válassza a Új teszteset.

Új teszteset létrehozása itt: SoapUI

Lépés 2: Adja meg a nevét Teszt eset és kattintson OK.

Adja meg a teszteset nevét

Lépés 3: A létrehozott teszteset kezdetben nulla lépésből áll, ahogy az alább látható.

Nulla lépéses teszteset

Jegyzet: A teszteset minden teszttípushoz nulla tesztlépéssel kerül hozzáadásra. Ahogy a lépések hozzáadódnak, a zárójelben lévő számok automatikusan frissülnek.

A funkcionális tesztlépések ide tartoznak Tesztlépések, a teljesítménylépések a következőkbe kerülnek Terhelési teszt, és a biztonsági ellenőrzések alatt állnak Biztonsági tesztek.

Lépés 4: Különböző tesztlépés-típusok beszúrása jobb gombbal Tesztlépések és a megfelelő opció kiválasztásával. REST webszolgáltatás esetén a SOAP kérés helyett a REST tesztkérést válassza.

Tesztlépés-típusok beszúrása

Tesztlépés hozzáadása SoapUI

Adjon hozzá egy tesztlépést az importált SOAP kérés validálásához a tesztesetben.

Lépés 1: Új típusú lépés hozzáadása SOAP kérés az alábbiak szerint.

SOAP kérés tesztlépés hozzáadása

Lépés 2: Írja be a lépés nevét, majd kattintson a OK.

Adja meg a tesztlépés nevét

Lépés 3: Megjelenik egy párbeszédpanel a meghívni kívánt művelet kiválasztásához. Az összes elérhető művelet fel van sorolva.

  • Sok művelet jelenik meg itt. A műveletek azonosak, kivéve a SOAP verziót: a CalculatorSoap a SOAP 1.1-es verzióját használja, míg a CalculatorSoap12 a SOAP 1.2-es verzióját.
  • A verzió ebben az esetben nem számít, így bármelyik választható.

    Válassza a SOAP-ot Operameghívása

  • A művelet kiválasztása után kattintson a OK.

    megerősít Operació kiválasztása

Lépés 4: Egy teszteset hozzáadásakor szabványos állítások alkalmazhatók. Az állításokat, más néven ellenőrzőpontokat vagy validációs pontokat, a következő oktatóanyag tárgyalja.

A következő ellenőrzőpontok adhatók hozzá egy teszteset létrehozásakor. Az alábbi példa egy olyan tesztesetet hoz létre, amelyhez nincsenek engedélyezve érvényesítési pontok.

Standard
 SoapUI Állítások

  1. Ellenőrzi, hogy a válaszüzenet SOAP-e a teszt futtatása után.
  2. Ellenőrzi, hogy a válaszséma érvényes-e.
  3. Ellenőrzi, hogy a SOAP válasz tartalmaz-e FAULT elemet.

Lépés 5: A teszteset létrehozásakor a kérés XML-je az alábbiak szerint jelenik meg. Az XML szerkezetét a pillanatkép ismerteti.

XML-struktúra kérése

Lépés 6: A tesztlépések száma mostantól egyre nő, mivel egy lépés hozzáadásra került. A betöltési és biztonsági tesztlépések hozzáadása automatikusan növeli a megfelelő számlálók értékét.

Tesztlépés-számláló növekedése

Kérés manuális küldése és a válasz olvasása SoapUI

Lépés 1: Az alábbi példa két egész számot ad össze.

  • intA — 5
  • intB — 5

Következő:

  1. Írja be ezeket a bemeneteket a kérdőjelek helyére a kérés XML-jében.
  2. A megfelelő XML-címkék frissítése után kattintson a Kérés elküldése hogy ellenőrizze a választ.

Kérés manuális küldése intA és intB használatával

Lépés 2: A kérés elküldése után a webszolgáltatást a webszerver feldolgozza, és a választ visszaadja, az alábbiak szerint.

A válasz megerősíti, hogy 5 meg 5 egyenlő 10-zel.

SOAP válasz, amely az összeadás eredményét mutatja

A SOAP válasz és napló panelek megismerése

Ahogy korábban említettük, a SOAP üzenetek HTTP-n keresztül kerülnek átvitelre. A RAW üzenetek vizsgálata segít tisztázni, hogyan továbbítódik a SOAP kérés és válasz HTTP-n keresztül.

Lépés 1: Kattintson az RAW fülön a SoapUI kérési ablak.

  1. A kérést elküldik a webszervernek, ezért a HTTP POST metódust használják.
  2. A SOAP kérés a HTTP üzenet törzsében halad.

SOAP kérés RAW fül

Lépés 2: Most kattintson a RAW fülön a SoapUI válaszablakot, hogy megértse, hogyan érkezik a válasz HTTP-n keresztül.

  1. A kérés feldolgozása után megjelenik a HTTP válaszkód (200), amely a sikert jelzi.
  2. A SOAP válasz a HTTP üzenet törzsében kerül vissza a kliensnek.

SOAP válasz RAW fül HTTP 200-zal

Az alábbi táblázat összefoglalja a gyors hibakereséshez használt gyakori HTTP válaszkódokat.

HTTP Code Leírás
1xx Tájékoztató: A kérés beérkezett, a feldolgozás folyamatban van.
2xx Siker: A művelet sikeresen fogadva, megértve és elfogadva.
3xx Átirányítás: A kérés teljesítéséhez további lépésekre van szükség.
4xx Ügyfélhiba: A kérés hibás szintaxist tartalmaz, vagy nem teljesíthető.
5xx Szerverhiba: A szerver nem tudott teljesíteni egy látszólag érvényes kérést.

Lépés 3: A Teszteset ablak további metaadatokat is megjelenít a kéréshez és a válaszhoz.

Teszteset ablak metaadatai

  1. Azt jelzi, hogy a küldött kérésben NINCS fejléc.
  2. Azt jelzi, hogy a webszervernek küldött kéréshez NINCSenek mellékletek.
  3. 10 fejlécelemet jelöl a válaszban, amelyek kattintással láthatók.
  4. Azt jelzi, hogy a válaszüzenetben nincsenek mellékletek.

Naplók panel

A Naplók panel a kliens és a szerver között kicserélt összes információt megjeleníti. A leggyakrabban használt naplófüleket az alábbiakban ismertetjük.

SoapUI Naplók panel fülei

SoapUI Bejelentkezés: Megjeleníti a webszerver válaszinformációit. Ugyanezek az adatok a soapui.log fájlban tárolódnak a SoapUI bin könyvtár.

SoapUI Napló fül

HTTP-napló: Megjeleníti az összes HTTP csomagátvitelt. A RAW nézetben látható összes információ a HTTP naplóban is rögzítésre kerül.

HTTP napló fül

Hibanapló: Megjeleníti a teljes projekt során felmerült összes hibát. Ugyanezek az információk a soapui-errors.log fájlban tárolódnak a SoapUI bin könyvtár.

Memórianapló: Figyelemmel kíséri a memória-felhasználást, és diagramon jeleníti meg. Ez hasznos memória-igényes műveletek futtatásakor.

Memórianapló fül

Miután elkészítettük a tesztcsomagot, a tesztesetet és a tesztlépést, és sikeres választ kaptunk, a következő lépés a válasz validálása. Az állítástípusokat a következő oktatóanyag tárgyalja.

GYIK

A tesztcsomag egy olyan konténer, amely a kapcsolódó teszteseteket egy csoportba sorolja. SoapUI Projekt. A teszteset egyetlen forgatókönyv, amely egy vagy több tesztelési lépést tartalmaz, például SOAP kérést, REST kérést vagy állításokat.

Igen. SoapUI támogatja mind a SOAP, mind a REST tesztelést. Új projekt létrehozásakor válassza az Új SOAP projekt lehetőséget WSDL-alapú szolgáltatásokhoz, vagy az Új REST projekt lehetőséget REST API-khoz. A tesztelési lépések közé tartozik a REST tesztkérés, a JDBC kérés és a Groovy Forgatókönyv.

Nyisd meg a Tesztcsomagot, és kattints a zöld lejátszás gombra. SoapUI az összes tesztesetet a megjelenésük sorrendjében futtatja. A Tesztcsomag tulajdonságai lapon párhuzamos vagy szekvenciális végrehajtást is konfigurálhat.

Igen. Használja a Tulajdonságok, a Tulajdonságátvitel vagy az Adatforrás lépést (SoapUI Pro) több bemenet ugyanazon a teszteseten keresztüli vezérléséhez. Ez hasznos adatvezérelt teszteléshez számos bemeneti kombináció esetén.

A mesterséges intelligencia asszisztensek képesek beolvasni egy WSDL vagy OpenAPI specifikációt, és realisztikus bemeneti kombinációkat, szélső eseteket és állítási mintákat javasolni. Ezek a javaslatok exportálhatók SoapUI XML vagy Groovy szkriptek, csökkentve a manuális erőfeszítést nagyméretű tesztcsomagok létrehozásakor.

Igen. A mesterséges intelligencia eszközei képesek elemezni SoapUI Naplóbejegyzések és HTTP-naplóbejegyzések, ismétlődő hibák klaszterezése, és a valószínűsíthető kiváltó okok, például sémaeltérések vagy hitelesítési hibák kiemelése. Ez felgyorsítja a triázst a regressziós ciklusok és a nagyméretű éjszakai futtatások során.

Foglald össze ezt a bejegyzést a következőképpen: