understanding assertions soapui soapui tutorial 5
Pracovali sme na základných princípoch SoapUI vytváranie projektov, pridávanie WSDL, odosielanie žiadostí a prijímanie odpovedí a generovanie testovacích prostriedkov, ktoré s nimi zatiaľ budú spolupracovať.
V tomto piatom výučbe SoapUI sa dozvieme všetko o tvrdeniach v SoapUI. Dôrazne vám to odporúčame sledujte celú sériu školení SoapUI na tejto stránke naučiť sa všetky tieto základné funkcie.
Čo sa dozviete:
Úvod do tvrdení
Ako pri každom testovaní, aj tu musíme porovnať, čo chceme, aby systém robil a čo v skutočnosti robí, aby sme dospeli k určitej validácii alebo tvrdeniu, ktoré sa v kontexte webových služieb nazýva. Ako testerov nezáleží na tom, či sme vykonali 1000 alebo dokonca milióny testovacích krokov, ale pre nás je výsledkom porovnanie výsledkov.
Celý tento článok preto strávime porozumením toho, ako to môžeme urobiť pomocou SoapUI, hoci webové služby je možné tvrdiť manuálne. Ručné tvrdenie je tiež časovo náročné, ak existuje viac odpovedí a odpovedí s veľkými údajmi. Tvrdenia SoapUI sú vynikajúce pri prekonávaní týchto nedostatkov.
Tvrdenia SOAPUI porovnajte časti / všetky odpovede s očakávaným výsledkom. Do ľubovoľného testovacieho kroku môžeme pridať rôzne tvrdenia, ktoré poskytuje SoapUI. Každý typ výrazu sa zameriava na konkrétne overenia odpovede, ako je zhoda textu, porovnanie XPATH alebo môžeme na základe našej potreby tiež písať dotazy.
Keď sa vykonajú kroky testu, potom príslušné tvrdenia dostanú odpoveď na príslušné kroky testu. Ak je akákoľvek odpoveď neúspešná, príslušné tvrdenie sa spracuje a príslušný krok testu sa označí ako neúspešný. Toto upozornenie je možné zobraziť v zobrazení testovacieho prípadu. V protokole vykonania testu tiež nájdeme neúspešné kroky testu. Obrazovka s tvrdením kroku testu vzorky vyzerá takto:
Na vyššie uvedenom obrázku niektoré z testovacích krokov zlyhali a niektoré z nich PASSED. Dôvodom je tvrdenie.
Ako sme už diskutovali skôr, ak podmienka tvrdenia nie je splnená s očakávanými výsledkami, potom je výsledok Zlyhal.
Práca s rôznymi druhmi tvrdení v SoapUI
Pozrime sa teraz, ako pracovať s rôznymi typmi tvrdení, ako sú:
- Obsahuje a neobsahuje tvrdenia
- XPath zápas a
- Tvrdenia zhody XQuery.
Najskôr potrebujeme platné umiestnenie schémy WSDL.
Postupujte podľa pokynov uvedených nižšie:
Krok 1. Vytvorte nový projekt SOAP stlačením kombinácie klávesov CTRL + N a postupujte podľa pokynov. Po vytvorení projektu SOAPUI vygeneruje zoznam rozhraní a príslušné požiadavky.
Krok 2. Ak chcete do tohto projektu pridať testovaciu sadu, postupujte takto:
- Kliknite pravým tlačidlom myši na názov rozhrania MedicareSupplierSoap
- Kliknite Vytvorte Testsuite možnosť z kontextového menu
- V nasledujúcom okne kliknite na tlačidlo OK:
- V nasledujúcom kontextovom okne musíte zadať požadovaný názov testovacej sady a kliknúť na tlačidlo OK
- SOAPUI PRO vygeneruje testovaciu sadu spolu s požiadavkami na paneli navigácie.
- V rámci testovacej sady uvidíte niektoré testovacie kroky s krokom žiadosti o SOAP.
Krok 3. Ak chcete vykonať túto testovaciu sadu, dvakrát kliknite na krok žiadosti a zadajte vstupnú hodnotu v príslušnom umiestnení. Napríklad otvorené GetSupplierByCity požiadať a vstúpiť New York medzi značkami mesta.
- Túto požiadavku spustíte kliknutím na ikonu SPUSTIŤ - dostanete odpoveď.
- Teraz pridajme tvrdenia. Kliknite na ikonu Tvrdenia karta sa nachádza v hornej časti kariet denníka.
- Po kliknutí pravým tlačidlom myši sa zobrazí vyskakovacie menu s niektorými základnými možnosťami súvisiacimi s uplatnením, ako je uvedené nižšie:
# 1) Obsahuje tvrdenie
Kliknite na možnosť Pridať tvrdenie alebo na ňu na paneli nástrojov - Pridať tvrdenie Na obrazovke sa zobrazí okno s rôznymi typmi tvrdení.
1. Kliknite Obsah nehnuteľnosti kategória zo zoznamu - zobrazí sa asociované typy tvrdení a ich popis
2. Kliknite Obsahuje tvrdenie a kliknite na tlačidlo Pridať
3. Toto je konfiguračné okno tvrdenia. Tu musíme určiť očakávanú podmienku na základe odpovede.
Na príklad je, dovoľte mi vstúpiť New York text v tomto textovom poli. V porovnaní s tým ignorujte prípad začiarkavacie políčko bude ignorované, aj keď je očakávaná hodnota malými alebo veľkými písmenami.
4. Teraz vykonajte testovaciu sadu a overte výsledky. Ako ste videli v okne testovacej sady, zelená označuje úspešné vykonanie a červená označuje zlyhanie.
# 2) Neobsahuje tvrdenie
Na overenie požiadaviek v negatívnych scenároch môžeme použiť tvrdenie „neobsahuje“. Môžeme použiť GetSupplierByZipCode žiadosť sa to naučiť.
Dvojitým kliknutím otvorte kartu žiadosti. V žiadosti o vstup zadajte neplatné PSČ na príslušnom mieste, napríklad 10029 . Spustiť túto žiadosť teraz. Skontrolujte údaje o odpovedi, ktoré majú podrobnosti o dodávateľovi pre dané PSČ - pozrite sa na obrázok nižšie:
(Kliknite na obrázok pre zväčšenie)
Tvrdenie „neobsahuje“ je pri úspešnom vykonaní zvýraznené zelenou farbou.
V konfiguračnom okne sme nakonfigurovali kladnú očakávanú hodnotu, ako je uvedené nižšie:
Vráti hodnotu true, ak sa nenájde očakávaná podmienená hodnota, a vráti hodnotu false, ak sa očakávaná hodnota nachádza v správe s odpoveďou.
Podobne môžeme zmeniť podmienku a požiadavku spustiť ešte raz. Podľa toho generuje výsledky.
# 3) XPath Match Assertion
Tvrdenie zhody XPath sa trochu líši, pokiaľ ide o to, že bude presadzovať odpoveď pomocou skutočných údajov o odpovedi.
Napríklad , ak máme webovú službu na autentifikáciu prihlásenia, ktorá bude autentifikovať prihlasovacie údaje používateľa a odošle potvrdenie klientovi s niektorým booleovským typom údajov, ktoré môžu byť TRUE alebo FALSE vo forme XML.
Ako viete, dokumenty XML sú tvorené značkami. Pri zadávaní očakávanej hodnoty v konfigurácii by teda mala byť vo forme XML.
náhlavná súprava pre virtuálnu realitu kompatibilná s ps4
Skúsme to urobiť:
Pridajte ešte jedno tvrdenie pre GetSupplierByCity žiadosť. V okne Pridať tvrdenie kliknite na Obsah nehnuteľnosti kategórie a potom kliknite na Zápas XPath tvrdenie.
Zobrazí sa nasledujúce okno:
Horná časť je deklaračnou časťou a dolná časť očakávanou výslednou časťou.
Keď klikneme na ikonu Vyhlásiť možnosť dostaneme niekoľko automaticky generovaných deklaračných skriptov, ako je uvedené nižšie:
vyhlásiť namespace soap = ‘http: //schemas.xmlsoap.org/soap/envelope/’;
vyhlásiť menný priestor ns1 = ‘http: //www.webservicex.net/’;
Vo vyššie uvedených skriptoch prvý riadok označuje odpoveď, ktorou by mali byť údaje XML a uzavreté značky SOAP. V ďalšom riadku bude celá odpoveď priradená alebo skopírovaná do súboru ns1 premenná menného priestoru počas vykonávania. Ak chceme filtrovať konkrétne údaje z celej odpovede, musíme pridať nasledujúci skript.
// ns1: SupplierData (1)
Ako viete, ak vykonáte GetSupplierByCity žiadosť, predloží odpoveď, ktorá obsahuje zoznam osobných údajov dodávateľa, ku ktorému patrí Mesto New York .
Tu sme použili XPath Match výraz na extrahovanie osobných údajov konkrétneho dodávateľa z hromadnej odpovede. Na tento účel sme použili ns1 premenná. Teraz kliknite na ikonu Vyberte z aktuálneho tlačidlo.
Potom SOAPUI vygeneruje nasledujúci výsledok:
0127051883 KMART CORP 250 W 34TH ST NEW YORK NY 10119 0002 (212)760-1242 04
Prečítajte si túto snímku obrazovky:
Tu v údajoch o odpovediach vidíte iba jeden osobný údaj dodávateľa. Na základe čísla, ktoré sa nachádza vo vnútri uhlových zátvoriek, sa vygeneruje výstup.
Zatiaľ ide o výber časti odozvy, ktorá je požadovaná, ako môžeme / používame XPath Match tvrdenie?
Poďme na to: Keď budete s odpoveďou v poriadku, kliknite na tlačidlo Uložiť.
Spočiatku, ak by ste túto službu spustili po nakonfigurovaní tvrdenia o zhode XPath bez akýchkoľvek zmien, výsledkom bude úspešná odpoveď so zeleným zvýraznením stavu.
Poďme však zmeniť vstupný parameter v požiadavke na vstup na niečo, čo je neplatné mesto - „XYZ alebo ABC“. Spustite požiadavku a skontrolujte výsledky a stav tvrdenia. Dostaneme reakciu na poruchu a červenú indikáciu stavu pre tvrdenie. Pretože sme už špecifikovali, že konkrétne údaje o dodávateľovi by mali byť prítomné v reakcii na službu v očakávanej konfigurácii výsledku a keď je názov mesta neplatný, tento dodávateľ zjavne nie je prítomný.
Takto môžeme presadiť odpoveď XML pomocou tvrdenia výrazu XPath Match. Súhlasíme s tým, že je to na začiatok celkom jednoduché, ale ak vyskúšate rôzne reakcie na službu, získate oveľa lepší nápad.
Môžeme tiež použiť agregačné funkcie vo výraze XPath Match. Sú to Sum, Min, Max, Count a Avg.
Napríklad , ak chceme poznať celkový počet dodávateľov, ktorí sa počítajú do očakávaných výsledkov, napíšeme nasledujúci skript.
count (// ns1: SupplierData) a vráti sa to 536 ako výsledok. Pamätajte, že všetky agregované funkcie by mali byť malé.
# 4) XQuery Match Assertion
Je to mierne podobné tvrdeniu XPath Match. Ako sme videli v konfigurácii tvrdenia XPath Match, budú tu dve časti - deklarácia a očakávaný výsledok.
- Pridajte pre požiadavku tvrdenie XQuery Match
- V konfiguračnom okne kliknite na ikonu vyhlásiť a napíš nasledujúci skript
- Teraz kliknite Vyberte z ponuky Aktuálne tlačidlo
- SOAPUI generuje odpoveď pre skript
Výraz XQuery podporuje aj výraz XPath Match, má však svoju vlastnú skriptovaciu syntax, ktorú nie je možné použiť pri tvrdení zhody XPath.
Napríklad :
Uvidíme jeden príklad na získanie všetkej odpovede dodávateľa na dáta pomocou výrazu XQuery. Pozrite sa na túto ukážku obrazovky, aby ste lepšie pochopili.
Aktuálny scenár:
declare namespace soap='http://schemas.xmlsoap.org/soap/envelope/'; declare namespace ns1='http://www.webservicex.net/'; { for $x in //ns1:SupplierData return $x }
Vo výraze XQuery je k dispozícii viac vstavaných funkcií. Oni sú kde, objednať podľa, pre, vrátiť sa a tak ďalej.
Záver
Toto sú pre vás najčastejšie používané tvrdenia.
Tu je potrebné zdôrazniť toto: Tvrdenia sú najdôležitejšie na presný odhad očakávaného výsledku webových služieb. Z tohto dôvodu je to jeden z kľúčových funkcie v SOAPUI PRO .
Ďalší tutoriál : V nasledujúcom tutoriáli sa dozvieme groovy so základmi skriptovania a ďalšími…
Zostaňte pripojení. Ako vždy, vaše pripomienky, otázky a návrhy sú vítané.
Odporúčané čítanie
- Ako vykonať testovanie na základe dát v SoapUI Pro - SoapUI Tutorial # 14
- 15+ návodov na SoapUI: najlepší nástroj na testovanie API webových služieb
- Hĺbkové návody pre zatmenie pre začiatočníkov
- Ako používať vlastnosti v SoapUI Groovy Script - SoapUI Tutorial # 7
- 7 Dôležité vlastnosti SoapUI a SoapUI Pro - výučba 2
- Práca s vlastnosťami SoapUI - SoapUI Tutorial # 8
- 4 dôležité vlastnosti SoapUI Pro pre Pro Audience - SoapUI Tutorial # 12
- Krok za krokom Proces sťahovania a inštalácie SoapUI - Výukový program SoapUI # 3