Business & Integration IT konzultant
Postman API testing + návod na inštaláciu a tvorba requestov
API je dôležitým aspektom vývoja softvéru, pretože umožňuje interakciu a výmenu dát medzi rôznymi softvérovými komponentami. Vďaka API môže tvoja aplikácia efektívne komunikovať s ďalšími systémami a poskytovať používateľom presné a aktuálne informácie. Funkcionalitu API môžeme testovať prostredníctvom viacerých nástrojov, v nasledujúcich riadkoch si povieme niečo o tom, ako na API testing v Postman nástroji.
Ak sa chceš dočítať viac o API a jeho testovaní pomocou ďalšieho populárneho nástroja, prečítaj si náš článok o testovaní API v Cypress.
Čo je Postman?
Postman.com je nástroj na testovanie API, ktorý používa viac ako 30 miliónov používateľov. V IT priemysle si získal obrovskú popularitu medzi vývojármi a testermi. Jeho jednoduché a používateľsky priateľské rozhranie je veľmi užitočné pri dokumentovaní, navrhovaní a testovaní API. S Postmanom môžeš jednoducho vytvárať požiadavky na koncové body API, posielať rôzne typy údajov a bez námahy skúmať odpovede. Je určený aj pre menej skúsených začiatočníkov, ktorí sa nechcú ponárať do zložitého kódu.
Prečo používať Postman na testovanie API?
- Intuitívne rozhranie a používanie: Postman sa vyníma svojím intuitívnym rozhraním a rýchlym prístupom k funkcionalitám, čo z neho robí vynikajúci nástroj pri práci s API. S Postmanom môžeš jednoducho vytvárať kolekcie a požiadavky, a vďaka jeho prehľadnému rozhraniu si ľahko udržíš prehľad vo svojich projektoch.
- Kompatibilita – Postman je k dispozícii na macOS, Windows, Linux a Chrome. Pracuje na Windows 7 a novších verziách, a je možné použiť ho aj na Windows pre ARM zariadenia pomocou binárneho súboru ia32. Na platforme Linux podporuje Ubuntu 12.04 a novšie verzie, Fedora 21 a Debian 8. Podporuje mnoho autentifikačných mechanizmov, ako je základná autentifikácia, OAuth, OAuth2, Jwt atď.
- Automatizácia a integrácia: Postman umožňuje automatizáciu API testovania a jeho integrácie do CI/CD pipeline. Testy sú navyše písané v JavaScripte, čo poskytuje široké možnosti pre vytvorenie komplexnej testovacej logiky.
- Zdieľanie a spolupráca: Postman umožňuje zdieľať kolekcie a testovacie prostredia s ostatnými členmi tímu. To zjednodušuje spoluprácu a umožňuje lepšie organizovať testovanie v rámci tímu.
- Podpora – Postman disponuje silnou podporou a komunitou, ktorá prispieva k zlepšeniu jeho používania na rôznych platformách, ako sú Github, Stackoverflow a ďalšie. Postman Discourse, blogy, Roadman a podporné centrum sú k dispozícii výhradne na podporu Postmana.
- Cena (postman pricing) – Postman je open-source, a teda bezplatný. Všetky vyššie uvedené výhody tak môžeš mať zdarma. Okrem toho existujú platené plány Postman Pro a Postman Enterprise, ktoré sú vhodné pre malé aj veľké podniky.
Inštalácia Postmana
Postman si môžeš nainštalovať ako aplikáciu, rovnako je dostupný i vo webovej verzii. Tento tutoriál používa desktop verziu 10.24.22. Link pre bezplatné stiahnutie nájdeš tu.
Vytvor si svoj prvý Postman workspace
V Postmane môžeš za účelom organizácie a správy projektov a testov vytvárať tzv. workspaces alebo pracovné plochy, a to na rôznych úrovniach súkromia. Osobné workspaces sú viditeľné len pre teba. Tímové workspaces môžu byť zase vytvárané za účelom zdieľania jednotlivých kolekcií s ostatnými členmi tímu. Takáto možnosť zjednodušuje spoluprácu a udržiava prehľad o testovaní v rámci tímu.
Ako na vytvorenie workspace?
- V hornej časti domovskej stránky klikni na „Workspaces“.
- Klikni na tlačidlo „Create Workspace“.
- Daj tvojmu workspace názov. Nastav viditeľnosť na súkromný alebo verejný workspace. Ak volíš verejný, uisti sa, že je povolený aj tvoj verejný profil. Týmto spôsobom môžeš spolupracovať s kýmkoľvek verejne. Ak si súčasťou tímu, môžeš zdieľanie workspace obmedziť len na určitých členov.
- Nakoniec potvrď vytvorenie nového workspace kliknutím na tlačidlo „Create“ a tvoj prvý workspace je na svete!
Postman environment (prostredie) a jeho nastavenie
Nastavenie prostredia v Postmane má dôležitú úlohu z niekoľkých dôvodov. Jedným z nich je možnosť definovať premenné, ktoré môžeš následne využiť v rôznych požiadavkách vo vnútri toho istého prostredia. To znamená, že nemusíš vytvárať nové premenné pre každú jednotlivú požiadavku. Miesto toho môžeš jednoducho meniť hodnoty premenných na jednom mieste, čo ti ušetrí čas a zjednoduší prácu.
Okrem toho používanie environmentov pomáha udržiavať premenné oddelené. To znamená, že sa minimalizuje riziko konfliktov nielen na globálnej úrovni, ale aj v iných testovacích prostrediach. Táto organizovaná štruktúra ti umožňuje ľahšie udržiavať prehľad vo svojich projektoch.
V tomto prípade bol vytvorený nový environment s názvom LocalEnvironment. Pre toto prostredie bola uložená premenná s názvom base_url s rovnakou Initial a Current value.
Postman variables – používanie premenných
V programovaní ti premenné umožňujú ukladať a opätovne používať hodnoty v kóde. Týmto spôsobom môžeš odkazovať na hodnotu v tvojich kolekciách, prostrediach a požiadavkách v Postmane. A ak potrebuješ aktualizovať hodnotu, stačí ju zmeniť len na jednom mieste.
Premenná base_url v Postmane uchováva základnú URL adresu, ktorá definuje začiatok cesty k zdrojom na webovej stránke alebo v API. Táto premenná slúži ako referenčný bod, ktorý sa používa na zostavenie URL adresy pre každú požiadavku v kolekcii. Keď je premenná base_url nastavená, všetky ďalšie požiadavky v kolekcii môžu používať relatívne URL adresy, ktoré sa spoja s base_url a vytvoria úplnú cestu k zdrojom.
Keď pridáš premennú do prostredia, môžeš špecifikovať tzv. Initial value a Current value.
Initial value sa nazýva aj zdieľaná, nakoľko je synchronizovaná s tvojím účtom pomocou cloudových serverov Postmanu. Je tiež zverejnená, ak sa rozhodneš pre verejný workspace spolu s kolekciou. Ak hodnota zahŕňa citlivé údaje, ako je heslo alebo kľúč, môžeš hodnotu zašifrovať vybratím typu tajnej premennej.
Current value, inak označovaná aj ako lokálna sa používa pri odosielaní požiadaviek v tvojej lokálnej inštancii Postmanu. Nikdy nie je synchronizovaná s tvojím účtom, ani zdieľaná s tvojím tímom, pokiaľ sa nerozhodneš ju trvale uložiť.
Vytvorenie API kolekcie (Postman API collection)
Kolekcia ti umožňuje zoskupiť požiadavky s rôznymi typmi metód (napríklad GET, POST, DELETE a PUT) a usporiadať ich do priečinkov alebo podpriečinkov. Týmto môžeš zdieľať kolekcie s členmi tímu, ako ich aj importovať a exportovať do iných inštancií Postmanu.
Okrem zjednodušenia pracovného prostredia ti kolekcie umožňujú generovať kompletnú dokumentáciu API a automatizovať beh požiadaviek.
- Ak chceš vytvoriť novú kolekciu, klikni na záložku „Collections“ v paneli vľavo. Táto záložka je miestom, kde môžeš spravovať všetky svoje kolekcie.
- Potom klikni na možnosť „Create Collection“.
- Po kliknutí na tlačidlo na vytvorenie novej kolekcie sa objaví dialógové okno, v ktorom môžeš zadať názov a voliteľný popis pre svoju kolekciu (v tomto prípade je to TestCollection).
Postman ponúka aj možnosť zvoliť si preddefinované šablóny ktoré umožňujú rýchlo začať s tvorbou kolekcií na základe určitých štandardných používateľských prípadov alebo scenárov. Tieto šablóny obsahujú preddefinované požiadavky na API, testy, nastavenia a ďalšie prvky, ktoré môžu byť upravené a prispôsobené podľa potrieb konkrétneho projektu. Použitie týchto šablón umožňuje zrýchliť vývoj API projektov a zlepšiť konzistentnosť a kvalitu vytvorených kolekcií.
Gratulujem! Podarilo sa ti vytvoriť svoju prvú kolekciu v Postmane. Môžeš do nej pridávať a spravovať rôzne požiadavky (requests), skripty, premenné a ďalšie nastavenia podľa svojich potrieb.
Pridanie požiadavky (Postman request) do kolekcie
Kolekcie ti umožňujú zoskupovať viaceré požiadavky, čím sa zjednodušuje správa a vykonávanie testovacích scenárov.
- Klikni na názov kolekcie, v rámci ktorej chceš pridať novú požiadavku.
- Po kliknutí na tlačidlo „Add Request“ sa objaví dialógové okno, kde môžeš zadať názov pre novú požiadavku. Je tiež vhodné pridať popis, ktorý jasne vystihuje účel tejto požiadavky.
- Po otvorení nového panela môžeš špecifikovať detaily, ktoré potrebuješ pre svoju požiadavku. Budeš potrebovať vedieť URL adresu a metódu. Môžeš tiež špecifikovať voliteľné hodnoty, ako sú autorizácia, parametre a telo dát a hlavičky.
Keď sa rozhodneš pre workspace, je načase zvoliť si metódu požiadavky. Ako metódu prvej požiadavky zvolíme GET.
Poznáš už základné metódy pri testovaní API?
GET: Používa sa na získanie dát zo servera.
POST: Slúži na vytvorenie nových záznamov na serveri.
PUT: Aktualizuje existujúce dáta na základe poskytnutých informácií.
PATCH: Podobné PUT, ale slúži na čiastočnú aktualizáciu dát. Posiela sa iba časť dát, ktoré majú byť zmenené.
DELETE: Používa sa na odstránenie záznamov alebo dát zo servera.
Parametre v API requestoch sú kľúčovými komponentmi, ktoré umožňujú presné špecifikovanie detailov a nastavení pre každú požiadavku. Napríklad parametre v GET metóde požiadavky sa využívajú na prenášanie dát z klienta na server prostredníctvom URL adresy. Tieto parametre sú zahrnuté do Query String, čo je časť URL adresy za otáznikom. Pomocou týchto parametrov môžeš napríklad filtrovať alebo špecifikovať údaje, ktoré chceš získať zo servera.
Autorizácia – Postman podporuje viaceré metódy autorizácie a autentifikácie, ako napríklad základnú autentifikáciu, API kľúč, Bearer token, OAuth atď.
Headers – Hlavičky sú dôležité pri komunikácii s API, pretože poskytujú potrebné kontextové informácie pre server, ktorý spracováva požiadavku. V Postmane môžete pridávať a upravovať tieto hlavičky priamo v používateľskom rozhraní, čo umožňuje ľahkú konfiguráciu požiadaviek a testovanie rôznych scenárov komunikácie s API.
Body – Telo (anglicky „body“) v API požiadavke v Postman slúži na prenášanie dát alebo informácií, ktoré chceš poslať na server. Tieto dáta môžu byť vo forme rôznych formátov, ako napríklad JSON, XML, HTML alebo textu. Napríklad, ak chceš vytvoriť nový záznam v databáze, môžeš poslať dáta obsahujúce informácie o tomto zázname vo forme tela požiadavky.
4. Keď dokončíš konfiguráciu požiadavky, klikni na tlačidlo „Send“. Postman zobrazí stavový kód, hlavičky a telo odpovede.
Ako analyzovať odpoveď zo servera?
Teraz je čas na analýzu odpoved zo servera, aby sme sa uistili, že zodpovedá očakávanému výsledku. Postman poskytuje rôzne zobrazenia, ako napríklad Pretty, Raw a Preview, aby ti pomohol efektívne analyzovať údaje. Odpovede HTTP API v rozsahu 200 naznačujú úspešné požiadavky na API. Ak je odpoveď v rozsahu 200, znamená to, že server prijal a spracoval požiadavku klienta bez akýchkoľvek chýb. To potvrdzuje úspešné dokončenie požiadavky na API. Rozsah 400 naznačuje, že server pochopil požiadavku klienta, ale existuje problém so samotnou požiadavkou. Rozsah 500 označuje chyby servera.
Záver
Manuálne testovanie môže rýchlo prerásť do zdĺhavého procesu, kde je navyše riziko chýb. Grafické používateľské rozhranie Postmanu je už nevyhnutnosťou v arzenáli každého vývojára API. Verím, že ti tento tutoriál pomôže v začiatkoch skúmania potenciálu, ktorý Postman pri testovaní API ponúka.