
Business & Integration IT konzultant
Testovanie API je neoddeliteľnou súčasťou takmer každého analytika kvality v softvérovom priemysle. Dnes si predstavíme výkonný nástroj vhodný na automatizáciu API testovania – SoapUI.
Ak už poznáš SoapUI, prečítaj si náš ďalší článok: SoapUI – 13. najčastejších chýb.
SoapUI je výkonný open-source nástroj široko využívaný na testovanie webových služieb. Je to multiplatformový nástroj vyvinutý v jazyku Java, podporuje Eclipse, NetBeans a IDEA. Používa sa na testovanie aplikácií s architektúrou orientovanou na služby (SOA) alebo REST. Umožňuje testerom testovať funkčné, nefunkčné testovanie, výkonnostné testovanie, regresné testovanie, kompiláciu a záťažové testovanie rôznych webových služieb a rozhraní API.
Podporuje viacero protokolov, napríklad SOAP, REST, HTTP, JMS a JDBC. Pre nového používateľa môže predstavovať stredne strmú krivku učenia, pretože rozhranie nie je vždy najintuitívnejšie.
Testovacie prípady možno zadávať pomocou grafického používateľského rozhrania (GUI). Môžu sa vykonávať buď pomocou grafického používateľského rozhrania, alebo vstavaným spôsobom pomocou Apache Ant alebo Apache Maven.
1) Functional testing – funkčné testovanie
2) Security testing – testovanie bezpečnosti
3) Load testing – testovanie zaťaženia
4) Schema compliance assertion – testovanie zhody
Testovanie zhody pozostáva z licenčného certifikátu na overovanie zdrojov a údajov a rôznych dohôd o službách na overenie webovej služby alebo webového rozhrania API. Okrem toho tieto certifikáty overovania údajov a testovacie skripty volajú pred a po testovaní zhody nástroj SoapUI na kontrolu, či je posledná prijatá správa spojená s definíciou schémy WSDL alebo WADL.
5) Regression testing – regresné testovanie
Regresné testovanie je funkčné testovanie používané v nástroji SoapUI na analýzu chýb alebo porúch webovej služby. A tiež revertuje webovú službu po nových zmenách v aktuálnej verzii nástrojov. Inými slovami môžeme povedať, že je zodpovednosťou testera vykonať testovacie garnitúry a osvedčiť, či sa existujúce funkcionality po nových zmenách v nástrojoch SoapUI nerozbijú a či jej fungovanie s nástrojmi je v poriadku.
6) SoapUI a podporované protokoly, technológie
SoapUI má najkomplexnejšiu podporu protokolov: SOAP, WSDL, REST, http, https, AMF, JDBC, JMS.
7) SopaUI – integrácia s inými automatizačnými nástrojmi
SoapUI sa veľmi dobre integruje s populárnymi nástrojmi:
Apache Maven je nástroj na správu softvérových projektov, ktorý dokáže spravovať zostavovanie projektu, podávanie správ a dokumentáciu z centrálneho úložiska. Aplikácia Maven dokáže vykonávať testy SOAPUI aj v rámci nástroja Maven Build pomocou jednoduchých príkazov.
HUDSON, nástroj na kontinuálnu integráciu založený na jazyku Java a integruje sa s nástrojmi, ako sú CVS, Subversion, Git, Perforce, Clearcase a RTC. SOAPUI sa tiež integruje s HUDSON, čo nám pomáha rýchlo odhaliť chyby pri každej revízii zo strany vývojárov.
JUnit je framework Unit Testing vytvorený v jazyku Java, ktorý dokáže riadiť tok testov aj zo SOAPUI.
Apache Ant, knižnica jazyka Java, ktorá je nástrojom príkazového riadka, ktorý pomáha pri zostavovaní softvéru. Pomocou príkazového riadka SOAP UI môžeme vykonávať testy v rámci automatizovaného zostavenia ANT.
Na základe údajov: PRO verzia nám pomáha pracovať s externým zdrojom údajov, ako sú textové súbory, XML, Groovy, Excel, súbor a databázy. To nám pomáha škálovať naše testy s celým radom vstupov riadených prostredníctvom uvedených zdrojov.
Pokrytie testov: Verzia PRO umožňuje testerom získať štatistický report, ktorý zobrazuje funkcionality, ktoré sú dobre otestované, a tiež oblasti, ktoré NIE sú dôkladne otestované. Rozbaľovacie reporty dokonca presne určujú, čo NEBOLO testované a čo sa NEpotvrdilo.
Debuggovanie testov: Potom môžeš spustiť test na daný bod prerušenia a zobraziť aktuálnu hodnotu parametrov SoapUI. Rozhranie ladenia testov zjednodušuje sledovanie toku testov, premenných, vlastností, požiadaviek, kontextu a mnohých ďalších, čím sa zjednodušuje vytváranie a zlepšovanie testov.
Podpora viacerých prostredí: Práca s viacerými prostrediami, ako napríklad DEV, QA, Pre-PROD prostredie, môže byť v prípade open source verzie náročnou úlohou, keďže testeri musia meniť endpointy, aby sa mohli vykonávať v rôznych prostrediach. Verzia PRO nám pomáha bezproblémovo prepínať medzi prostrediami.
Reportovanie: Verzia PRO je vybavená mnohými možnosťami prispôsobenia reportov, ktoré generujú podrobné reporty na úrovni Project, TestSuite, TestCase alebo LoadTest. Taktiež vytvára reporty v rôznych formátoch, ako napríklad PDF, HTML, Word alebo Excel.
Testovanie bezpečnosti: Obidve verzie SoapUI majú možnosti testovania bezpečnostných zraniteľností, ako sú XML bombs, SQL injection, fuzzing, cross-site scripting. Avšak iba SOAP UI PRO dokáže vykonávať skenovanie zraniteľností pomocou generátora bezpečnostných testov pomocou kliknutia myšou.
SQL Builder : Pre netechnických testerov môže byť písanie zložitých dotazov SQL ťažkopádne. Nástroj SQL Builder v SOAP UI PRO im môže pomôcť pri vytváraní SQL dotazov pomocou grafického rozhrania nástroja SQL Builder. Táto funkcia nám pomáha urýchliť realizáciu testovania založeného na údajoch.
Podpora: Súčasťou licenčnej zmluvy SOAP UI Pro je okrem podpory na online fóre aj exkluzívna podpora.
Nástroj si môžeš stiahnuť z oficiálnej stránky tu: SoapUI download. Ceny s využitím ReadyAPI nájdeš tu: SoapUI pricing.
Ak sa chceš v SoapUI zlepšiť a rozširiť si svoje obzory, odporúčam tento Udemy tutoriál pre začiatočníkov. Ak si pokročilejší, môžeš si pozrieť tutoriál pre pokročilých.
Ak vieš po nemecky a si IT tester alebo automatizovaný tester, pozri si naše firemné benefity a reaguj na voľné pracovné miesta.