Blog Automatické testovanie webových služieb I.

Automatické testovanie webových služieb I.

SOAPui_iconV dnešnej časti sa zameriam na automatizované testy webových služieb. Webová služba je softvérový systém umožňujúci interakciu dvoch strojov na sieti. Je popísaná v strojovo spracovateľnom formáte, konkrétne WSDL [Web Service Definition Language]. S webovou službou ostatné stroje komunikujú spôsobom, ktorý je predpísaný v popise služby, pomocou protokolu SOAP.

Protokoly SOAP a WSDL sú zapísané v XML. Hlavným prínosom webových služieb je prijatie ich protokolov ako štandard medzi-systémovej komunikácie. Vytvárajú tak vhodný nástroj pre komunikáciu medzi firemnými systémami tzv. Business-to-Business operácií. Ako vedľajší prínos je prijatie protokolu SOAP ako štandardu pre prenášanie správ medzi programami alebo systémami.  Toľko na objasnenie systému, ktorý budeme automatizovane testovať.

Cieľom tohto článku bude automatické otestovanie voľne dostupnej webovej služby na konverziu medzi rôznymi menami, ktorá je dostupná na tejto URL.

Na vytvorenie automatizovanej infraštruktúry použijem tri voľne dostupné nástroje.

  1. Java
  2. ANT
  3. soapUI

Javu a ANT nebudem osobitne predstavovať. Vo svete sa už stali industriálnymi štandardmi. SoapUI je free  open source multiplatformový framework na funkčné testovanie webových služieb. Vďaka ľahko použiteľnému a intuitívnemu grafickému rozhraniu, SoapUI umožňuje ľahko a rýchlo vytvárať a spúšťať automatizované funkčné, regresné a záťažové testy. V jedinom testovacom prostredí  poskytuje kompletné pokrytie testami a podporuje všetky štandardné protokoly a technológie.

Začneme teda s downloadom SoapUI z domovského webu.

SOAPui_download

SoapUI je dostupný aj ako plugin do Eclipse.

SOAPui_eclipse

Po inštalácii free – nie PRO verzie sa dáme rovno do vytvorenia testovacieho scenára. Ako som už spomenul, budeme testovať voľne dostupnú webovú službu ktorá slúži na konverziu medzi rôznymi menami – „Currency Convertor“. Popis ziskame na url: http://www.webservicex.net/ws/wsdetails.aspx?wsid=10

WEBservice_currency_convertor

WSDL schéma sa nachádza na tejto url: http://www.webservicex.net/CurrencyConvertor.asmx?WSDL – WSDL schéma a teda url na ktorej sa nachádza bude aj vstupný parameter, od ktorého sa odvinú aj  zvyšné kroky potrebné na vytvorenie testov. Po spustení programu soapUI začneme kliknutím pravou myšou na „Projects“ a vyberieme „New soapUI Project“.

SOAPui_app

Do políčka Initial “WSDL/WADL” vložíme url linku s WSDL popisom Webovej služby.

01_SOAPui_project

Ak ponecháme všetky default nastavenia, po potvrdení “OK” nám soapUI vytvorí testovaciu štruktúru aj s interfejsom “CurrencyConvertorSoap”.

Po dvojkliku na CurrencyConvertorSoap sa prenesieme k detailom testovaného webového servisu.

02_SOAPui_project

Po rozkliknutí CurrencyConvertorSoap -> ConversionRate -> Request1, uvidíme okno sk pripraveným requestom, ktorý ale doplníme tak, aby webová služba vo svojom response vrátila kurz Eura voči Českej korune:

<soapenv:Envelope 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:web="http://www.webserviceX.NET/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:ConversionRate>
         <web:FromCurrency>EUR</web:FromCurrency>
         <web:ToCurrency>CZK</web:ToCurrency>
      </web:ConversionRate>
   </soapenv:Body>
</soapenv:Envelope>

Po kliknutí na “Run”- zelená šipka v ľavom hornom rohu, dostaneme response s prepočtom:

V čase písanie tohto članku teda 25,911 CZK za jedno EURO. 🙂

<soap:Envelope 
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <ConversionRateResponse xmlns="http://www.webserviceX.NET/">
         <ConversionRateResult>25.911</ConversionRateResult>
      </ConversionRateResponse>
   </soap:Body>
</soap:Envelope>

Nabudúce si ukážeme ako sa z interfejsu webovej služby vygenerujú “TestSuits”, obsahujúce “TestCase” s “TestSteps”. Napíšeme aj bulid.xml pre ANT, ktorý testy dávkovo spustí, vygeneruje report, ktorý otvorí v internetovom prehliadači.


Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.



Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Roman Hesteric
Roman Hesterichttp://www.priklady.eu
Pracuje ako QA Architekt v Swiss Re. Predtým CTO pre Java a .Net aplikácie. Autorizovaný spolupracovník na projekte Canoo Webtest. Držiteľ certifikátov MCTS a MCPD pre SharePoint server. V IT pracuje 25 rokov, od starého dobrého Turbo Pascalu od Borlandu, cez Javu, až po C#. Administrátor matematického portálu www.priklady.eu

IT Analytik/čka

IT Analytik/čka | Bankovníctvo | TPP | Bratislava Pracuj pre NAJ zamestnávateľa v oblasti bankovníctva na mobilnej aplikácií s množstvom...

Frontend/ React Developer

Pracuj podľa vlastných pravidiel, slobodne a kreatívne. Pre Frontend Developera máme 12+ mesačný projekt pre prepravnú spoločnosť. Práca je na...

Backend / .Net, C# Developer

Pracuj podľa vlastných pravidiel, slobodne a kreatívne. Pre Backend Developera máme 12+ mesačný projekt pre prepravnú spoločnosť. Práca je na...

C/C++ Developer

Chce to niečo výnimočné? Zmeň prostredie a získaj nadšenie z práce! Spoločnosť, ktorá vyvíja hardvérové čipy hľadá C/C++ Developera. Zakladateľ...

Data Scientist / REMOTE

Pre mladý startup vyvíjajúci softvér, ktorý prispieva hráčom k lepšiemu zážitku z hrania, hľadáme Data Scientist. Založili ho dvaja...

IT Aplikačný Architekt

Chceš stabilné zamestnanie, vychutnávať si skvelý kolektív a mať priestor na realizáciu svojich riešení? Pre spoločnosť pôsobiacu v energetike...

Front End Developer

Pracuj na svetovom SW produkte, ktorý je používaný miliónmi používateľov! Firma rýchlo rastie a vyvíja nové features. Poznáme ich prostredie...

Máte vo firemných stretnutiach chaos? Česká firma našla riešenie, teraz s aplikáciou dobývajú svet

Vyvíjajú ju v Českej republike, pracujú na nej aj hendikepovaní kolegovia a používajú ju firmy v rôznych krajinách sveta....

Ondrej Kubovič – Digitálna bezpečnosť a riziká na internete

Tentokrát sme sa porozprávali s Ondrejom Kubovičom, špecialistom v spoločnosti ESET na populárnu tému digitálnej bezpečnosti. Ondrej nám uviedol...

Slovenskí tvorcovia hier dosiahli v roku 2020 rekordný obrat 72 miliónov EUR, zamestnávali 870 ľudí

Slovenský herný priemysel nezastavila ani pandémia, v roku 2020 opäť výrazne rástol. Podľa štatistík Slovak Game Developers Association prekonal...

Čítaj ďalej:

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.