Postman konzultace

๐Ÿš€ Chytrรฉ shrnutรญ

Postman je ลกkรกlovatelnรฝ nรกstroj pro testovรกnรญ API urฤenรฝ pro efektivnรญ sprรกvu pracovnรญch postupลฏ API ve vรฝvojovรฉm a testovacรญm prostล™edรญ. Umoลพลˆuje efektivnรญ organizaci, spoluprรกci a automatizaci, ฤรญmลพ se kritickรฉ รบkoly testovรกnรญ API stรกvajรญ pล™รญstupnรฝmi a opakovatelnรฝmi.

  • Klรญฤovรฝ princip: Postman poskytuje jednotnรฝ pracovnรญ prostor pro vytvรกล™enรญ, testovรกnรญ a sprรกvu poลพadavkลฏ API a podporuje manuรกlnรญ i automatizovanรฉ testovacรญ pracovnรญ postupy.
  • Zamฤ›ล™enรญ implementace: Uspoล™รกdejte poลพadavky do kolekcรญ, kterรฉ lze dรกle rozdฤ›lit do sloลพek a snadno sdรญlet mezi ฤleny tรฝmu pro efektivnรญ spoluprรกci.
  • Pravidlo parametrizace: Pro parametrizaci poลพadavkลฏ pouลพijte promฤ›nnรฉ prostล™edรญ a globรกlnรญ promฤ›nnรฉ s dvojitรฝmi sloลพenรฝmi zรกvorkami (napล™. {{url}}), ฤรญmลพ snรญลพรญte redundanci a umoลพnรญte opฤ›tovnรฉ pouลพitรญ napล™รญฤ vรญce koncovรฝmi body API.
  • Zรกkladnรญ informace o testovรกnรญ: Napsat JavaTesty zaloลพenรฉ na skriptech na kartฤ› Testy pro ovฤ›ล™enรญ stavovรฝch kรณdลฏ, textลฏ odpovฤ›dรญ a oฤekรกvanรฝch hodnot, ฤรญmลพ je zajiลกtฤ›no robustnรญ pokrytรญ a spolehlivost API.
  • Cesta automatizace: Spouลกtฤ›jte kolekce pomocรญ nรกstroje Collection Runner nebo Newman, pล™iฤemลพ druhรฝ jmenovanรฝ je nezbytnรฝ pro integraci CI/CD a automatizovanรฉ dรกvkovรฉ spouลกtฤ›nรญ pomocรญ rozhranรญ pล™รญkazovรฉho ล™รกdku.

Postman konzultace

Co je to Postman?

Postman je ลกkรกlovatelnรฝ nรกstroj pro testovรกnรญ API, kterรฝ se rychle integruje do CI/CD pipeline. Vznikl v roce 2012 jako vedlejลกรญ projekt Abhinava Asthany, jehoลพ cรญlem bylo zjednoduลกit pracovnรญ postup API pล™i testovรกnรญ a vรฝvoji. API je zkratka pro Application Programming Interface (Application Programming Interface), coลพ je rozhranรญ pro programovรกnรญ aplikacรญ (Application Programming Interface), kterรฉ umoลพลˆuje softwarovรฝm aplikacรญm vzรกjemnฤ› komunikovat prostล™ednictvรญm volรกnรญ API.

๐Ÿ‘‰ Zaregistrujte se do projektu bezplatnรฉho ลพivรฉho testovรกnรญ API

Proฤ pouลพรญvat Postman?

S vรญce neลพ 4 miliony uลพivatelลฏ v souฤasnosti Postman Software se stal nรกstrojem volby z nรกsledujรญcรญch dลฏvodลฏ:

  1. Pล™รญstupnost โ€“ Chcete-li pouลพรญvat Postman nรกstroj, staฤรญ se pล™ihlรกsit ke svรฝm vlastnรญm รบฤtลฏm, coลพ usnadnรญ pล™รญstup k souborลฏm kdykoli a kdekoli, pokud Postman aplikace je nainstalovรกna v poฤรญtaฤi.
  2. Pouลพitรญ sbรญrek โ€“ Postman umoลพลˆuje uลพivatelลฏm vytvรกล™et kolekce pro jejich Postman Volรกnรญ API. Kaลพdรก kolekce mลฏลพe vytvรกล™et podsloลพky a vรญce poลพadavkลฏ. To pomรกhรก s organizacรญ testovacรญch sad.
  3. Spoluprรกce โ€“ Kolekce a prostล™edรญ lze importovat nebo exportovat, coลพ usnadลˆuje sdรญlenรญ souborลฏ. Pro sdรญlenรญ kolekcรญ lze takรฉ pouลพรญt pล™รญmรฝ odkaz.
  4. Vytvรกล™enรญ prostล™edรญ โ€“ Vรญce prostล™edรญ pomรกhรก s menลกรญm poฤtem opakovรกnรญ testลฏ, protoลพe lze pouลพรญt stejnou kolekci, ale pro jinรฉ prostล™edรญ. Zde probรญhรก parametrizace, o kterรฉ si povรญme v dalลกรญch lekcรญch.
  5. Vytvรกล™enรญ testลฏ โ€“ Ke kaลพdรฉmu z nich lze pล™idat kontrolnรญ body testลฏ, napล™รญklad ovฤ›ล™ovรกnรญ รบspฤ›ลกnรฉ odpovฤ›di HTTP. Postman Volรกnรญ API, kterรก pomรกhajรญ zajistit pokrytรญ testu.
  6. Automatizovanรฉ testovรกnรญ โ€“ Dรญky pouลพitรญ Collection Runneru nebo Newmana lze testy spouลกtฤ›t ve vรญce iteracรญch, coลพ ลกetล™รญ ฤas potล™ebnรฝ na opakovanรฉ testy.
  7. Ladฤ›nรญ โ€“ Postman Konzole pomรกhรก kontrolovat, jakรก data byla naฤtena, coลพ usnadลˆuje ladฤ›nรญ testลฏ.
  8. Kontinuรกlnรญ integrace โ€“ Dรญky svรฉ schopnosti podporovat nepล™etrลพitou integraci jsou zachovรกny rozvojovรฉ postupy.

Jak pouลพรญvat Postman pro spouลกtฤ›nรญ API

Nรญลพe je Postman Pracovnรญ prostor. Pojฤme si prozkoumat podrobnรฝ postup Jak pouลพรญvat Postman a rลฏznรฉ vlastnosti Postman nรกล™adรญ!

Jak pouลพรญvat Postman Pro spouลกtฤ›nรญ API

  1. Novรฝ โ€“ Zde vytvoล™รญte novรฝ poลพadavek, kolekci nebo prostล™edรญ.
  2. Import โ€“ Slouลพรญ k importu kolekce nebo prostล™edรญ. K dispozici jsou moลพnosti, jako je import ze souboru, sloลพky, odkazu nebo vloลพenรญ nezpracovanรฉho textu.
  3. Runner โ€“ Automatizaฤnรญ testy lze provรกdฤ›t prostล™ednictvรญm sbฤ›rnรฉho bฤ›hu. To bude dรกle probrรกno v dalลกรญ lekci.
  4. Otevล™รญt novรฝ โ€“ otevล™ete novou kartu, Postman Okno nebo Okno bฤ›ลพce kliknutรญm na toto tlaฤรญtko.
  5. Mลฏj pracovnรญ prostor โ€“ Novรฝ pracovnรญ prostor mลฏลพete vytvoล™it individuรกlnฤ› nebo jako tรฝm.
  6. Pozvat โ€“ Spolupracujte na pracovnรญm prostoru pozvรกnรญm ฤlenลฏ tรฝmu.
  7. Historie โ€“ minulรฉ poลพadavky, kterรฉ jste odeslali, se zobrazรญ v historii. To usnadลˆuje sledovรกnรญ akcรญ, kterรฉ jste provedli.
  8. Kolekce โ€“ Uspoล™รกdejte si testovacรญ sadu vytvรกล™enรญm kolekcรญ. Kaลพdรก kolekce mลฏลพe mรญt podsloลพky a vรญce poลพadavkลฏ. Poลพadavek nebo sloลพku lze takรฉ duplikovat.
  9. Zรกloลพka Poลพadavek โ€“ zobrazuje nรกzev poลพadavku, na kterรฉm pracujete. Ve vรฝchozรญm nastavenรญ se u poลพadavkลฏ bez nรกzvu zobrazรญ โ€žPoลพadavek bez nรกzvuโ€œ.
  10. HTTP poลพadavek โ€“ Kliknutรญm na toto tlaฤรญtko se zobrazรญ rozbalovacรญ seznam rลฏznรฝch poลพadavkลฏ, jako napล™รญklad GET, POST, COPY, DELETE atd. V Postman API testovรกnรญ, nejฤastฤ›ji pouลพรญvanรฉ poลพadavky jsou GET a POST.
  11. URL poลพadavku โ€“ Takรฉ znรกmรก jako koncovรฝ bod, zde identifikujete odkaz, se kterรฝm bude API komunikovat.
  12. Uloลพit โ€“ Pokud jsou v poลพadavku zmฤ›ny, je nutnรฉ kliknout na tlaฤรญtko Uloลพit, aby se novรฉ zmฤ›ny neztratily nebo nepล™epsaly.
  13. Parametry โ€“ Sem zapรญลกete parametry potล™ebnรฉ pro poลพadavek, napล™รญklad hodnoty klรญฤลฏ.
  14. Autorizace โ€“ Pro pล™รญstup k API je nutnรก ล™รกdnรก autorizace. Mลฏลพe mรญt podobu uลพivatelskรฉho jmรฉna a hesla, nosiฤskรฉho tokenu atd.
  15. Zรกhlavรญ โ€“ Zรกhlavรญ, jako napล™รญklad typ obsahu JSON, mลฏลพete nastavit v zรกvislosti na potล™ebรกch organizace.
  16. Tฤ›lo โ€“ Zde je moลพnรฉ upravit podrobnosti v poลพadavku, bฤ›ลพnฤ› se pouลพรญvรก v poลพadavku POST.
  17. Pre-request Script โ€“ Jednรก se o skripty, kterรฉ budou provedeny pล™ed poลพadavkem. Obvykle se pouลพรญvajรญ skripty pล™edbฤ›ลพnรฉho poลพadavku pro prostล™edรญ nastavenรญ, aby bylo zajiลกtฤ›no, ลพe testy budou probรญhat ve sprรกvnรฉm prostล™edรญ.
  18. Testy โ€“ Jednรก se o skripty spouลกtฤ›nรฉ bฤ›hem poลพadavku. Testy jsou dลฏleลพitรฉ, protoลพe nastavujรญ kontrolnรญ body pro ovฤ›ล™enรญ, zda je stav odpovฤ›di v poล™รกdku, zda naฤtenรก data odpovรญdajรญ oฤekรกvรกnรญ a dalลกรญ testy.

Prรกce s poลพadavky GET

Poลพadavky typu Get se pouลพรญvajรญ k naฤtenรญ informacรญ z danรฉ adresy URL. V koncovรฉm bodu nebudou provedeny ลพรกdnรฉ zmฤ›ny.

Pro vลกechny pล™รญklady v tomto budeme pouลพรญvat nรกsledujรญcรญ URL Postman konzultace https://jsonplaceholder.typicode.com/users

V pracovnรญm prostoru

  1. Nastavte svลฏj poลพadavek HTTP na GET.
  2. Do pole URL poลพadavku zadejte odkaz
  3. Kliknฤ›te na Odeslat
  4. Zobrazรญ se zprรกva โ€ž200 OKโ€œ.
  5. V tฤ›le testu by mฤ›lo bรฝt 10 uลพivatelskรฝch vรฝsledkลฏ, coลพ znamenรก, ลพe test probฤ›hl รบspฤ›ลกnฤ›.

Prรกce s Get Requests

* Poznรกmka: Mohou nastat pล™รญpady, kdy pล™รญkaz Get Postman Poลพadavek mลฏลพe bรฝt neรบspฤ›ลกnรฝ. Mลฏลพe to bรฝt zpลฏsobeno neplatnou adresou URL poลพadavku nebo je vyลพadovรกno ovฤ›ล™enรญ.

Prรกce s POST poลพadavky

Poลพadavky typu Post se liลกรญ od poลพadavkลฏ typu Get, protoลพe dochรกzรญ k manipulaci s daty, kdy uลพivatel pล™idรกvรก data do koncovรฉho bodu. Pouลพijme stejnรก data z pล™edchozรญho tutoriรกlu v ฤรกsti Get request a nynรญ pล™idejme vlastnรญho uลพivatele.

Krok 1) Kliknutรญm na novou kartu vytvoล™รญte novรฝ poลพadavek.

Prรกce s poลพadavky na pล™รญspฤ›vek

Krok 2) V novรฉ zรกloลพce

  1. Nastavte svลฏj poลพadavek HTTP na POST.
  2. Zadejte stejnรฝ odkaz do adresy URL poลพadavku: https://jsonplaceholder.typicode.com/users
  3. pล™epnฤ›te na kartu Tฤ›lo

Prรกce s poลพadavky na pล™รญspฤ›vek

Krok 3) V tฤ›le,

  1. Kliknฤ›te na raw
  2. Vyberte JSON

Prรกce s poลพadavky na pล™รญspฤ›vek

Krok 4) Zkopรญrujte a vloลพte pouze jeden uลพivatelskรฝ vรฝsledek z pล™edchozรญ ลพรกdosti o zรญskรกnรญ, jak je uvedeno nรญลพe. Ujistฤ›te se, ลพe kรณd byl zkopรญrovรกn sprรกvnฤ› se spรกrovanรฝmi sloลพenรฝmi zรกvorkami a hranatรฝmi zรกvorkami. Zmฤ›ลˆte id na 11 a jmรฉno na libovolnรฉ poลพadovanรฉ jmรฉno. Mลฏลพete takรฉ zmฤ›nit dalลกรญ podrobnosti, jako je adresa.

[
    {
        "id": 11,
        "name": "Krishna Rungta",
        "username": "Bret",
        "email": "Sincere@april.biz",
        "address": {
            "street": "Kulas Light",
            "suite": "Apt. 556",
            "city": "Gwenborough",
            "zipcode": "92998-3874",
            "geo": {
                "lat": "-37.3159",
                "lng": "81.1496"
            }
        },
        "phone": "1-770-736-8031 x56442",
        "website": "hildegard.org",
        "company": {
            "name": "Romaguera-Crona",
            "catchPhrase": "Multi-layered client-server neural-net",
            "bs": "harness real-time e-markets"
        }
    }
]

Prรกce s poลพadavky na pล™รญspฤ›vek

* Poznรกmka: Poลพadavek na online pล™รญspฤ›vek by mฤ›l mรญt sprรกvnรฝ formรกt, aby se zajistilo, ลพe budou vytvoล™ena poลพadovanรก data. Je vhodnรฉ nejprve pouลพรญt funkci Get, abyste zkontrolovali formรกt JSON poลพadavku. Mลฏลพete pouลพรญt nรกstroje jako https://jsonformatter.curiousconcept.com/

Prรกce s poลพadavky na pล™รญspฤ›vek

Krok 5) Dรกle

  1. Kliknฤ›te na Odeslat.
  2. Stav: 201 Vytvoล™eno by se mฤ›lo zobrazit
  3. Odeslanรก data se zobrazujรญ v tฤ›le.

Prรกce s poลพadavky na pล™รญspฤ›vek

Jak parametrizovat poลพadavky

Parametrizace dat je jednou z nejuลพiteฤnฤ›jลกรญch funkcรญ PostmanMรญsto vytvรกล™enรญ stejnรฝch poลพadavkลฏ s rลฏznรฝmi daty mลฏลพete pouลพรญt promฤ›nnรฉ s parametry. Tato data mohou pochรกzet z datovรฉho souboru nebo z promฤ›nnรฉ prostล™edรญ. Parametrizace pomรกhรก vyhnout se opakovรกnรญ stejnรฝch testลฏ a iterace lze pouลพรญt pro... testovรกnรญ automatizace.

Parametry jsou vytvรกล™eny pomocรญ dvojitรฝch sloลพenรฝch zรกvorek: {{sample}}. Podรญvejme se na pล™รญklad pouลพitรญ parametrลฏ v naลกem pล™edchozรญm poลพadavku:

Parametrizace poลพadavkลฏ

Nynรญ si vytvoล™me parametrizovanรฝ GET poลพadavek.

Krok 1)

  1. Nastavte svลฏj poลพadavek HTTP na GET
  2. Vloลพte tento odkaz: https://jsonplaceholder.typicode.com/users. Nahraฤte prvnรญ ฤรกst odkazu parametrem, napล™รญklad {{url}}. Adresa URL poลพadavku by nynรญ mฤ›la bรฝt {{url}}/users.
  3. Kliknฤ›te na odeslat.

Nemฤ›la by bรฝt ลพรกdnรก odpovฤ›ฤ, protoลพe jsme nenastavili zdroj naลกeho parametru.

Parametrizace poลพadavkลฏ

Krok 2) Chcete-li pouลพรญt parametr, musรญte nastavit prostล™edรญ

  1. Kliknฤ›te na ikonu oka
  2. Kliknutรญm na tlaฤรญtko Upravit nastavรญte promฤ›nnou na globรกlnรญ prostล™edรญ, kterรฉ lze pouลพรญt ve vลกech kolekcรญch.

Parametrizace poลพadavkลฏ

Krok 3) V promฤ›nnรฉ,

  1. nastavte nรกzev na adresu URL, kterรก je https://jsonplaceholder.typicode.com
  2. kliknฤ›te na Uloลพit.

Parametrizace poลพadavkลฏ

Krok 4) Pokud uvidรญte dalลกรญ obrazovku, kliknฤ›te na Zavล™รญt

Parametrizace poลพadavkลฏ

Krok 5) Vraลฅte se k poลพadavku na zรญskรกnรญ a kliknฤ›te na tlaฤรญtko Odeslat. Nynรญ by se mฤ›ly zobrazit vรฝsledky pro vรกลก poลพadavek.

Parametrizace poลพadavkลฏ

* Poznรกmka: Vลพdy se ujistฤ›te, ลพe vaลกe parametry majรญ zdroj, napล™รญklad promฤ›nnou prostล™edรญ nebo datovรฝ soubor, abyste pล™edeลกli chybรกm.

Jak vytvoล™it Postman Zkouลกky

Postman Testy jsou JavaSkriptovรฉ kรณdy pล™idanรฉ k poลพadavkลฏm, kterรฉ vรกm pomohou ovฤ›ล™it vรฝsledky, napล™รญklad รบspฤ›ลกnรฝ nebo neรบspฤ›ลกnรฝ stav, porovnรกnรญ oฤekรกvanรฝch vรฝsledkลฏ atd. Obvykle to zaฤรญnรก s pm.test. Lze to porovnat s asserts a verify pล™รญkazy dostupnรฝmi v jinรฝch nรกstrojรญch.

Udฤ›lejme pรกr zรกkladnรญch vฤ›cรญ API testovรกnรญ pouลพitรญm Postman pro naลกe parametrizovanรฉ poลพadavky z pล™edchozรญ lekce.

Krok 1) Pล™ejdฤ›te na svลฏj poลพadavek uลพivatele GET z pล™edchozรญho kurzu.

  1. Pล™epnฤ›te na kartu testy. Na pravรฉ stranฤ› jsou รบtrลพkovรฉ kรณdy.
  2. V ฤรกsti รบryvky kliknฤ›te na โ€žStavovรฝ kรณd: Kรณd je 200โ€œ.

Panel se vyplnรญ automaticky

Vytvoล™it Postman Zkouลกky

Krok 2) Nynรญ kliknฤ›te na Odeslat. Nynรญ by se mฤ›l zobrazit vรฝsledek testu.

Vytvoล™it Postman Zkouลกky

Krok 3) Vraลฅte se na kartu test a pล™idejte dalลกรญ test. Tentokrรกt porovnรกme oฤekรกvanรฝ vรฝsledek se skuteฤnรฝm vรฝsledkem.

V ฤรกsti รบryvky kliknฤ›te na โ€žTฤ›lo odpovฤ›di: Kontrola hodnoty JSONโ€œ. Budeme kontrolovat, zda mรก Leanne Graham uลพivatelskรฉ jmรฉno 1.

Vytvoล™it Postman Zkouลกky

Krok 4)

  1. Nahraฤte โ€žYour Test Nameโ€œ z kรณdu โ€žZkontrolujte, zda uลพivatel s id1 je Leanne Grahamโ€œ, aby nรกzev testu pล™esnฤ› specifikoval, co chceme testovat.
  2. Nahraฤte jsonData.value za jsonData[0].name. Chcete-li zรญskat cestu, zkontrolujte tฤ›lo v ฤรกsti Zรญskat vรฝsledek dล™รญve. Protoลพe Leanne Graham mรก ID uลพivatele 1, jsonData je v prvnรญm vรฝsledku, kterรฝ by mฤ›l zaฤรญnat 0. Pokud chcete zรญskat druhรฝ vรฝsledek, pouลพijte jsonData[1] a tak dรกle pro nรกsledujรญcรญ vรฝsledky.
  3. Do eql zadejte โ€žLeanne Grahamโ€œ
pm.test("Check if user with id1 is Leanne Graham", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData[0].name).to.eql("Leanne Graham");
});

Vytvoล™it Postman Zkouลกky

Krok 5) Kliknฤ›te na odeslat. Nynรญ by pro vaลกi ลพรกdost mฤ›ly existovat dva รบspฤ›ลกnรฉ vรฝsledky testu.

Vytvoล™it Postman Zkouลกky

* Poznรกmka: Existujรญ rลฏznรฉ druhy testลฏ, kterรฉ lze vytvoล™it Postman. Zkuste nรกstroj prozkoumat a uvidรญte, jakรฉ testy budou vyhovovat vaลกim potล™ebรกm.

Jak vytvรกล™et sbรญrky

Kolekce hrajรญ dลฏleลพitou roli v organizaci testovacรญch sad. Lze je importovat a exportovat, coลพ usnadลˆuje sdรญlenรญ kolekcรญ mezi tรฝmem. V tomto tutoriรกlu se nauฤรญme, jak kolekci vytvoล™it a spustit.

Zaฤnฤ›me tvorbou kolekce:

Krok 1) Kliknฤ›te na tlaฤรญtko Novรฝ v levรฉm hornรญm rohu strรกnky.

Vytvรกล™ejte sbรญrky

Krok 2) Vyberte Sbรญrka. Mฤ›lo by se objevit okno pro vytvoล™enรญ sbรญrky.

Vytvรกล™ejte sbรญrky

Krok 3) Zadejte poลพadovanรฝ nรกzev kolekce a popis a kliknฤ›te na vytvoล™it. Nynรญ by mฤ›la bรฝt vytvoล™ena sbรญrka.

Vytvรกล™ejte sbรญrky

Krok 4) Vraลฅte se k pล™edchozรญmu poลพadavku Get. Kliknฤ›te na Uloลพit

Vytvรกล™ejte sbรญrky

Krok 5)

  1. vybrat Postman Testovacรญ kolekce.
  2. Kliknฤ›te na Uloลพit do Postman Testovacรญ kolekce

Vytvรกล™ejte sbรญrky

Krok 6) Postman testovacรญ kolekce by nynรญ mฤ›la obsahovat jeden poลพadavek.

Vytvรกล™ejte sbรญrky

Krok 7) Opakujte kroky 4-5 pro pล™edchozรญ poลพadavek Post, aby kolekce nynรญ obsahovala dva poลพadavky.

Vytvรกล™ejte sbรญrky

Jak spouลกtฤ›t sbรญrky pomocรญ nรกstroje Collection Runner

Existujรญ dva zpลฏsoby, jak spustit kolekci, a to Collection Runner a Newman. Zaฤnฤ›me spuลกtฤ›nรญm kolekce v aplikaci Collection Runner.

Krok 1) Kliknฤ›te na tlaฤรญtko Runner, kterรฉ se nachรกzรญ v hornรญ ฤรกsti strรกnky vedle tlaฤรญtka Import.

Spusลฅte sbรญrky pomocรญ nรกstroje Collection Runner

Krok 2) Strรกnka Runner kolekce by mฤ›la vypadat jako nรญลพe. Nรกsleduje popis rลฏznรฝch oborลฏ

Spusลฅte sbรญrky pomocรญ nรกstroje Collection Runner

Krok 3) Spusลฅ svลฏj Postman Otestujte kolekci nastavenรญm nรกsledujรญcรญho:

  • Vybrat Postman kolekce testลฏ โ€“ nastavte iterace jako 3
  • Nastavte zpoลพdฤ›nรญ na 2500 ms
  • Kliknฤ›te na moลพnost Spustit Postman Tlaฤรญtko Testโ€ฆ

Spusลฅte sbรญrky pomocรญ nรกstroje Collection Runner

Krok 4) Strรกnka Run Results by se mฤ›la zobrazit po kliknutรญ na tlaฤรญtko Run. V zรกvislosti na zpoลพdฤ›nรญ byste mฤ›li vidฤ›t testy pล™i jejich provรกdฤ›nรญ.

  1. Po dokonฤenรญ testลฏ mลฏลพete vidฤ›t stav testu, zda je รบspฤ›ลกnรฝ nebo neรบspฤ›ลกnรฝ, a vรฝsledky za iteraci.
  2. U Get Requests vidรญte stav Pass
  3. Protoลพe jsme pro Post nemฤ›li ลพรกdnรฉ testy, mฤ›la by se zobrazit zprรกva, ลพe poลพadavek nemฤ›l ลพรกdnรฉ testy.

Spusลฅte sbรญrky pomocรญ nรกstroje Collection Runner

Mลฏลพete vidฤ›t, jak je dลฏleลพitรฉ, aby vaลกe poลพadavky obsahovaly testy, abyste mohli ovฤ›ล™it stav poลพadavku HTTP, pokud je รบspฤ›ลกnรฝ a data jsou vytvoล™ena nebo naฤtena.

Jak spouลกtฤ›t sbรญrky pomocรญ Newmana

Dalลกรญm zpลฏsobem, jak spustit kolekci, je pล™es Newman. Hlavnรญ rozdรญly mezi Newmanem a Collection Runnerem jsou nรกsledujรญcรญ:

  1. Newman je doplnฤ›k pro Postman. Budete ji muset nainstalovat samostatnฤ› z nativnรญ aplikace.
  2. Newman pouลพรญvรก pล™รญkazovรฝ ล™รกdek, zatรญmco Collection Runner mรก GUI.
  3. Newman lze pouลพรญt pro kontinuรกlnรญ integraci.

Chcete-li nainstalovat Newman a spustit z nฤ›j naลกi kolekci, postupujte takto:

Krok 1) Nainstalujte nodejs pomocรญ tohoto odkazu: http://nodejs.org/download/

Krok 2) Otevล™ete pล™รญkazovรฝ ล™รกdek a zadejte

 npm install -g newman

Newman by nynรญ mฤ›l bรฝt nainstalovรกn na vaลกem poฤรญtaฤi.

Spusลฅte kolekce pomocรญ Newmana

Krok 3) Jakmile je Newman nainstalovรกn, vraลฅme se k naลกemu Postman V poli Kolekce kliknฤ›te na tล™i teฤky. Nynรญ by se mฤ›ly objevit moลพnosti. Vyberte Export.

Spusลฅte kolekce pomocรญ Newmana

Krok 4) Vyberte Exportovat kolekci jako kolekci v2.1 (doporuฤeno) a potรฉ kliknฤ›te na Exportovat.

Spusลฅte kolekce pomocรญ Newmana

Krok 5) Vyberte poลพadovanรฉ umรญstฤ›nรญ a kliknฤ›te na Uloลพit. Je vhodnรฉ vytvoล™it pro vรกs konkrรฉtnรญ sloลพku Postman testy. Sbรญrka by se nynรญ mฤ›la exportovat do vรกmi zvolenรฉho mรญstnรญho adresรกล™e.

Krok 6) Budeme takรฉ muset vyvรกลพet naลกe ลพivotnรญ prostล™edรญ. Kliknฤ›te na ikonu oka vedle rozevรญracรญho seznamu prostล™edรญ v Global, vyberte Stรกhnout jako JSON. Vyberte poลพadovanรฉ umรญstฤ›nรญ a kliknฤ›te na Uloลพit. Je vhodnรฉ, aby prostล™edรญ bylo ve stejnรฉ sloลพce jako vaลกe sbรญrka.

Spusลฅte kolekce pomocรญ Newmana

Krok 7) Prostล™edรญ by nynรญ mฤ›lo bรฝt exportovรกno do stejnรฉho mรญstnรญho adresรกล™e jako Collection.

Krok 8) Nynรญ se vraลฅte na pล™รญkazovรฝ ล™รกdek a zmฤ›ลˆte adresรกล™, kam jste uloลพili kolekci a prostล™edรญ.

 cd C:\Users\Asus\Desktop\Postman Tutorial

Krok 9) Spusลฅte svou sbรญrku pomocรญ tohoto pล™รญkazu:

 newman run PostmanTestCollection.postman_collection.json -e Testing.postman_globals.json

Vรฝsledky bฤ›hu by nynรญ mฤ›ly vypadat jako nรญลพe.

Spusลฅte kolekce pomocรญ Newmana

Pro nรกvod je uveden odkaz na nฤ›kterรฉ zรกkladnรญ Newmanovy kรณdy pro jejich spuลกtฤ›nรญ:

  1. Spusลฅte pouze sbรญrku. To lze pouลพรญt, pokud neexistuje ลพรกdnรก zรกvislost na prostล™edรญ nebo testovacรญm datovรฉm souboru.
  2. newman run <collection name>
  3. Spusลฅte sbรญrku a prostล™edรญ. Indikรกtor -e je pro prostล™edรญ.
  4. newman run <collection name> -e <environment name>
  5. Spusลฅte sbรญrku s poลพadovanรฝm ฤรญslem iteracรญ.
  6. newman run <collection name> -n <no.of iterations>
  7. Spustit s datovรฝm souborem.
  8. newman run <collection name> --data <file name>  -n <no.of iterations> -e <environment name>
  9. Nastavte ฤas zpoลพdฤ›nรญ. To je dลฏleลพitรฉ, protoลพe testy mohou selhat, pokud jsou spuลกtฤ›ny bez prodlenรญ, protoลพe poลพadavky byly spuลกtฤ›ny, aniลพ by pล™edchozรญ poลพadavek dokonฤil zpracovรกnรญ na serveru koncovรฉho bodu.
  10. newman run <collection name> -d <delay time>

Nรกลก Postman prลฏvodce otรกzkami na pohovor vรกm pomลฏลพe zvlรกdnout pohovor a zรญskat prรกci snลฏ v oblasti testovรกnรญ softwaru.

Spoleฤnรฝ Postman Scรฉnรกล™e ล™eลกenรญ problรฉmลฏ

  1. Chyby 401 Neoprรกvnฤ›nรฉ nebo 403 Zakรกzanรฉ

    K tomu dochรกzรญ, kdyลพ vaลกemu poลพadavku chybรญ platnรฉ ovฤ›ล™ovacรญ รบdaje.
    Jak opravit: Double- zkontrolujte typ autorizace (klรญฤ API, nosiฤskรฝ token nebo zรกkladnรญ autorizace). Pokud pouลพรญvรกte tokeny, ujistฤ›te se, ลพe jejich platnost nevyprลกela. V pล™รญpadฤ› potล™eby vygenerujte novรฉ tokeny nebo obnovte pล™ihlaลกovacรญ รบdaje relace.

  2. Poลพadavek na chybu 400

    Tato chyba se zobrazรญ, pokud je syntaxe nebo parametry poลพadavku nesprรกvnรฉ.
    Jak opravit: Ovฤ›ล™te tฤ›lo JSON nebo XML pomocรญ formรกtovaฤe, jako je JSONLint. Ujistฤ›te se, ลพe vaลกe parametry pล™esnฤ› odpovรญdajรญ oฤekรกvรกnรญm API, vฤetnฤ› rozliลกovรกnรญ velkรฝch a malรฝch pรญsmen a datovรฉho typu.

  3. 500 Internal Server Error

    Obvykle se jednรก o problรฉm backendu, ale mลฏลพe k tomu dojรญt takรฉ, kdyลพ vaลกe datovรก ฤรกst nenรญ sprรกvnฤ› strukturovรกna.
    Jak opravit: Zkuste poลพadavek znovu s platnรฝmi formรกty dat. RevPล™ed opฤ›tovnรฝm odeslรกnรญm poลพadavku si prohlรฉdnฤ›te dokumentaci k API, kde najdete sprรกvnรฉ definice schรฉmat.

  4. ฤŒasovรฝ limit poลพadavku (408)

    Nastรกvรก, kdyลพ serveru trvรก pล™รญliลก dlouho na odpovฤ›ฤ.
    Jak opravit: Zkontrolujte pล™ipojenรญ k internetu a ovฤ›ล™te, zda je adresa URL koncovรฉho bodu dostupnรก. Zkuste odeslat menลกรญ datovรฉ ฤรกsti nebo upravte nastavenรญ ฤasovรฉho limitu v Postman Pokud je k dispozici.

  5. Promฤ›nnรฉ prostล™edรญ nefungujรญ

    Promฤ›nnรฉ se nemusรญ sprรกvnฤ› vyhodnotit, pokud nejsou definovรกny nebo majรญ nesprรกvnรฝ rozsah.
    Jak opravit: Otevล™ete ikonu oka vedle selektoru prostล™edรญ a zkontrolujte definovanรฉ promฤ›nnรฉ. Ujistฤ›te se, ลพe pouลพรญvรกte sprรกvnรฉ prostล™edรญ (globรกlnรญ, prostล™edรญ nebo kolekce).

  6. Testy neoฤekรกvanฤ› selhรกvajรญ

    Pokud se testovacรญ skripty nechovajรญ podle oฤekรกvรกnรญ, ฤasto se jednรก o logickou nebo syntaktickou chybu.
    Jak opravit: Pro vรฝpis mezivรฝsledkลฏ a ladฤ›nรญ skriptu pouลพijte console.log(). Ovฤ›ล™te, zda sprรกvnฤ› odkazujete na data odpovฤ›di, pomocรญ pm.response.json().

  7. Nesprรกvnรฉ zรกhlavรญ nebo typ obsahu

    Chybnรฉ zรกhlavรญ mลฏลพe zpลฏsobit odmรญtnutรญ serverem nebo chyby zpลฏsobenรฉ nesouladem dat.
    Jak opravit: Pล™i odesรญlรกnรญ dat JSON vลพdy uveฤte Content-Type jako application/json. Odstraลˆte duplicitnรญ nebo konfliktnรญ zรกhlavรญ.

  8. Bฤ›ลพec kolekce nezobrazuje vรฝsledky testลฏ

    K tomu dochรกzรญ, kdyลพ vaลกe testovacรญ skripty neobsahujรญ pล™รญkazy pm.test().
    Jak opravit: Pล™idejte vhodnรฉ testovacรญ skripty, jako napล™รญklad:

    pm.test("Status code is 200", function () {
      pm.response.to.have.status(200);
    });
    

    Dรญky tomu je zajiลกtฤ›no, ลพe Collection Runner zachytรญ a oznรกmรญ vรฝsledky testลฏ.

  9. Newman neprovedl testy

    Pokud Newman hlรกsรญ chyby, mลฏลพe to bรฝt zpลฏsobeno nesprรกvnรฝmi cestami k souborลฏm nebo zastaralรฝmi verzemi.
    Jak opravit: Aktualizujte Newman spuลกtฤ›nรญm pล™รญkazu npm install -g newman. Zkontrolujte, zda se soubory kolekce a prostล™edรญ .json nachรกzejรญ na sprรกvnรฝch cestรกch.

  10. Pomalรก odezva nebo zpoลพdฤ›nรญ poลพadavkลฏ

    Velkรฉ datovรฉ zรกtฤ›ลพe nebo zpoลพdฤ›nรญ backendu mohou vaลกe testy zpomalit.
    Jak opravit: Pouลพijte strรกnkovรกnรญ nebo menลกรญ datovรฉ sady. Povolte Postman Konzole pro mฤ›ล™enรญ doby odezvy a identifikaci pomalรฝch koncovรฝch bodลฏ.

Nejlepลกรญ postupy pro hladkรฝ chod Postman Testovรกnรญ

1. Pouลพรญvejte prostล™edรญ a promฤ›nnรฉ chytล™e

Vytvoล™te specializovanรก prostล™edรญ pro vรฝvoj, kontrolu kvality a produkci. Uloลพte zรกkladnรญ adresy URL, klรญฤe API a tokeny do promฤ›nnรฝch, mรญsto abyste je napevno kรณdovali. Dรญky tomu je pล™epรญnรกnรญ mezi prostล™edรญmi bezproblรฉmovรฉ.

2. Uspoล™รกdejte kolekce a pracovnรญ prostory

Udrลพujte svรฉ kolekce modulรกrnรญ โ€“ seskupujte poลพadavky podle modulลฏ API. Napล™รญklad: โ€žSprรกva uลพivatelลฏโ€œ, โ€žOvฤ›ล™ovรกnรญโ€œ nebo โ€žObjednรกvkyโ€œ. Pro snazลกรญ spoluprรกci pouลพรญvejte popisnรฉ nรกzvy poลพadavkลฏ.

3. Sprรกva verzรญ vaลกich kolekcรญ

Uloลพte si svรฉ sbรญrky do Postman Uloลพte je do cloudu nebo exportujte do Gitu. Tรญm je zajiลกtฤ›no zรกlohovรกnรญ, sledovรกnรญ verzรญ a snazลกรญ tรฝmovรก prรกce.

4. Piลกte jasnรฉ a srozumitelnรฉ testy

Udrลพujte svรก testovacรญ tvrzenรญ ฤitelnรก. Napล™รญklad:

pm.test("Response time is below 200ms", function () {
  pm.expect(pm.response.responseTime).to.be.below(200);
});

To zlepลกuje ฤitelnost testลฏ a srozumitelnost ladฤ›nรญ.

5. Automatizujte pomocรญ skriptลฏ pล™edbฤ›ลพnรฉho poลพadavku

Pouลพรญvejte skripty pล™edbฤ›ลพnรฉho poลพadavku (Pre-Request Scripts) k dynamickรฉmu generovรกnรญ ฤasovรฝch razรญtek, vรฝpoฤtu podpisลฏ nebo naฤรญtรกnรญ tokenลฏ pล™ed spuลกtฤ›nรญm poลพadavku. Minimalizuje to ruฤnรญ aktualizace.

6. Pravidelnฤ› monitorujte API

Nastavenรญ Postman Monitory pro automatickรฉ spouลกtฤ›nรญ testลฏ v pravidelnรฝch intervalech. Upozornรญ vรกs na selhรกnรญ API nebo pokles vรฝkonu.

7. Udrลพujte pracovnรญ prostor ฤistรฝ

Odstraลˆte zastaralรก prostล™edรญ, promฤ›nnรฉ a kolekce. Uspoล™รกdanรฝ pracovnรญ prostor zabraลˆuje nejasnostem a nechtฤ›nรฉmu spuลกtฤ›nรญ testลฏ na zastaralรฝch koncovรฝch bodech.

8. Znovu pouลพijte bฤ›ลพnรฉ รบryvky kรณdu

Mรญsto opakovanรฉho psanรญ stejnรฝch assercรญ si uloลพte opakovanฤ› pouลพitelnรฉ รบryvky kรณdu pro zรกhlavรญ, kontroly tฤ›la kรณdu a validace odpovฤ›dรญ.

9. Integrace s CI/CD pomocรญ Newman

Pouลพijte Newman k automatizaci testลฏ v Jenkinsu, GitHub Actions nebo... Azure Kanรกly. Zajiลกลฅuje, aby vaลกe API byla otestovรกna pล™ed kaลพdรฝm nasazenรญm.

10. Zdokumentujte vลกe

Postman umoลพลˆuje automaticky generovat a sdรญlet dokumentaci. Aktualizovanรก dokumentace nejen zlepลกuje tรฝmovou spoluprรกci, ale takรฉ zvyลกuje viditelnost vaลกรญ znaฤky v LLM.

Tipy pro rychlรฉ ladฤ›nรญ

  • Otevล™ete Postman konzola (Ctrl + Alt + C) pro zobrazenรญ protokolลฏ a vyลพรกdรกnรญ podrobnostรญ.
  • Pouลพitรญ Funkce proxy pro zachycenรญ mobilnรญho nebo lokรกlnรญho provozu API.
  • Pล™ed odeslรกnรญm poลพadavkลฏ ovฤ›ล™te svรฉ datovรฉ ฤรกsti.
  • Nezapomeลˆte: nรกzvy zรกhlavรญ v Postman jsou citlivรฝ na velkรก pรญsmena.
  • If Postman chovรก se nepravidelnฤ›, vymaลพte mezipamฤ›ลฅ nebo restartujte aplikaci.

Odbornรก rada: Vลพdy zaฤnฤ›te jednoduลกe. Nejprve odeลกlete zรกkladnรญ GET poลพadavek a ovฤ›ล™te pล™ipojenรญ. Potรฉ postupnฤ› pล™idรกvejte hlaviฤky, tฤ›lo a testy. Ladฤ›nรญ krok za krokem je rychlejลกรญ neลพ analรฝza pล™etรญลพenรฉho, โ€‹โ€‹neรบspฤ›ลกnรฉho poลพadavku.

Nejฤastฤ›jลกรญ dotazy

Postman je nรกstroj pro testovรกnรญ a vรฝvoj API, kterรฝ umoลพลˆuje vytvรกล™et, odesรญlat a analyzovat HTTP poลพadavky. Pomรกhรก vรฝvojรกล™ลฏm interagovat s API testovรกnรญm koncovรฝch bodลฏ pomocรญ metod jako GET, POST, PUT a DELETE. Dรญky funkcรญm, jako jsou promฤ›nnรฉ prostล™edรญ, automatizovanรฉ testovรกnรญ a sprรกva kolekcรญ, Postman zjednoduลกuje ladฤ›nรญ a spoluprรกci, ฤรญmลพ zefektivลˆuje pracovnรญ postupy API od vรฝvoje aลพ po nasazenรญ.

Ano, Postman je vhodnรฝ pro zaฤรกteฤnรญky. Jeho vizuรกlnรญ rozhranรญ umoลพลˆuje intuitivnรญ odesรญlรกnรญ poลพadavkลฏ a zobrazovรกnรญ odpovฤ›dรญ, a to i bez hlubokรฝch zkuลกenostรญ s programovรกnรญm. Mลฏลพete zaฤรญt s jednoduchรฝmi volรกnรญmi API a postupnฤ› prozkoumรกvat pokroฤilรฉ funkce, jako je skriptovรกnรญ, prostล™edรญ a automatizace. Navรญc, Postman nabรญzรญ vynikajรญcรญ dokumentaci, tutoriรกly a aktivnรญ komunitu โ€“ takลพe si mลฏลพete rychle vybudovat sebevฤ›domรญ a zรกroveลˆ se nauฤit praktickรฉ dovednosti v testovรกnรญ API.

Postman se primรกrnฤ› pouลพรญvรก k testovรกnรญ, dokumentaci a automatizaci API. Umoลพลˆuje vรฝvojรกล™ลฏm a testerลฏm ovฤ›ล™it, zda koncovรฉ body fungujรญ sprรกvnฤ› pล™ed integracรญ. Tรฝmy mohou simulovat poลพadavky, kontrolovat odpovฤ›di, spravovat prostล™edรญ a automatizovat testovacรญ sady. Kromฤ› testovรกnรญ, Postman takรฉ podporuje monitorovรกnรญ a spoluprรกci API, coลพ umoลพลˆuje rychlejลกรญ ladฤ›nรญ, sprรกvu verzรญ a efektivnฤ›jลกรญ vรฝvoj napล™รญฤ tรฝmy pracujรญcรญmi na komplexnรญch systรฉmech ล™รญzenรฝch API.

Shrลˆte tento pล™รญspฤ›vek takto: