Postman: co to je, testování API a práce s požadavky

Autor: IT Sectr Publikováno: 2026-05-08 Doba čtení: 9 min

Postman — platforma pro testování API s grafickým rozhraním, podporující protokoly REST, GraphQL, WebSocket a gRPC. Nástroj umožňuje vytvářet a odesílat HTTP požadavky, organizovat je do kolekcí, automatizovat testování pomocí skriptů a generovat dokumentaci k endpointům. Podle údajů Postman Learning Center (2026) platformu používá více než 25 milionů vývojářů po celém světě.

Nejdůležitější

  • Postman — univerzální API klient s vizuálním editorem požadavků, kolekcemi a proměnnými prostředí.
  • Collections sdružují požadavky do skupin s možností spuštění přes Collection Runner s kontrolami v JavaScriptu.
  • Proměnné prostředí umožňují přepínat mezi dev, staging a production bez ruční změny požadavků.
  • Automatizace testů se realizuje přes Pre-request Scripts a Tests v jazyce JavaScript s asynchronními kontrolami.
  • Dokumentace se generuje automaticky na základě kolekce s podporou Markdown a příkladů kódu v různých jazycích.

Co je Postman a klíčové možnosti

Postman je platforma pro vývoj a testování API, dostupná jako desktopová aplikace (Windows, macOS, Linux) a webová verze. Původně vytvořen jako rozšíření pro Chrome v roce 2012, Postman se vyvinul v plnohodnotný ekosystém s podporou monitoringu, mock serverů a generování klientského kódu.

Formáty požadavků a odpovědí

Postman podporuje všechny HTTP metody: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS. Tělo požadavku může být ve formátech JSON, XML, form-data, x-www-form-urlencoded a binary. Odpověď se zobrazuje se zvýrazněním syntaxe, Pretty-print a možností prohlížení nezpracovaných hlaviček.

Podpora autentizace

Vestavěné typy autentizace zahrnují Bearer Token, Basic Auth, Digest Auth, OAuth 1.0, OAuth 2.0, API Key a AWS Signature. Postman automaticky doplňuje hlavičku Authorization podle vybraného typu, což urychluje testování chráněných endpointů bez ručního kopírování tokenů.

Rozhraní Postman a navigace

Rozhraní Postman se skládá z bočního panelu (Collections, APIs, Environments), pracovní oblasti (Request Builder/Response Viewer) a spodního panelu (Console, Runner). Karta Params umožňuje upravovat query parametry URL v tabulkové podobě, karta Headers — spravovat HTTP hlavičky.

Postman Console

Console (View → Show Postman Console) zaznamenává všechny síťové požadavky a odpovědi v chronologickém pořadí, včetně mezilehlých přesměrování a hlaviček. Je to nepostradatelný nástroj při ladění složitých OAuth toků a řetězců přesměrování, kdy standardní Response Viewer zobrazuje pouze konečný výsledek.

Workspaces a týmová práce

Postman podporuje týmové pracovní prostory (Workspaces) s verzováním kolekcí přes Fork a Merge. Členové týmu mohou komentovat požadavky, navrhovat změny a synchronizovat kolekce v reálném čase. Public Workspace umožňuje publikovat API dokumentaci pro externí vývojáře.

Vytváření a odesílání HTTP požadavků

Základní požadavek v Postman se vytvoří výběrem HTTP metody a zadáním URL do adresního řádku. Po odeslání se odpověď zobrazí ve spodním panelu s kódem stavu, dobou provedení a velikostí. Parametry požadavku se automaticky kódují při zadávání.

Dynamické proměnné a snippety

V URL a těle požadavku lze použít dynamické proměnné ve formátu {`{`}}$variable${`}`}. Vestavěné proměnné {`{`}$guid${`}`}, {`{`}$timestamp${`}`} a {`{`}$randomInt${`}`} generují jedinečné hodnoty pro každý požadavek. Snippety kódu jsou k dispozici přes tlačítko Code (), které generuje ekvivalentní požadavek v cURL, Python, JavaScript, Kotlin, Swift a dalších jazycích.

javascript
// Příklad skriptu v Pre-request: generování HMAC podpisu
const timestamp = Date.now().toString();
const secret = pm.environment.get("api_secret");
const hash = CryptoJS.HmacSHA256(timestamp, secret);
pm.request.headers.add({
    key: "X-Signature",
    value: hash.toString()
});

Kolekce a proměnné prostředí

Kolekce jsou skupiny souvisejících požadavků, sdružených podle projektu nebo funkčního modulu. Každá kolekce může obsahovat vnořené složky, společné hlavičky a Pre-request skripty, které se spouštějí před každým požadavkem v kolekci. Pořadí požadavků se nastavuje přetažením.

Proměnné prostředí a globální proměnné

Postman podporuje pět úrovní proměnných: global, collection, environment, data a local. Priorita řešení konfliktů — od lokálních ke globálním. Soubory Environment obsahují páry klíč-hodnota pro různá prostředí: development, staging, production. Přepnutí prostředí automaticky mění všechny URL a tokeny.

ÚroveňOblast viditelnostiPriorita
LocalAktuální požadavek1 (nejvyšší)
DataCollection Runner (z CSV/JSON)2
EnvironmentAktivní prostředí3
CollectionCelá kolekce4
GlobalCelý pracovní prostor5

Automatizace testování API pomocí skriptů

Postman umožňuje psát testy v JavaScriptu na kartě Tests, které se spouštějí po obdržení odpovědi. Testy kontrolují kód stavu, tělo odpovědi, hlavičky a dobu provedení. Výsledky se zobrazují v panelu Test Results s barevnou indikací úspěšnosti.

Knihovna pm a řetězení požadavků

Objekt pm poskytuje metody pro práci s odpovědí: pm.response, pm.expect, pm.variables. Řetězení požadavků se realizuje uložením dat z odpovědi jednoho požadavku do proměnné a jejím použitím v dalším. To je základ pro budování integračních testů a ověřování obchodní logiky prostřednictvím sekvence API volání.

javascript
// Test: kontrola struktury odpovědi a uložení tokenu
pm.test("Status code is 200", () => {
    pm.response.to.have.status(200);
});

const json = pm.response.json();
pm.environment.set("auth_token", json.data.token);

Collection Runner a Newman

Collection Runner spouští všechny požadavky kolekce sekvenčně a provádí testy v každém kroku. Newman — konzolová verze Postman pro CI/CD pipeline (Jenkins, GitHub Actions, GitLab CI). Newman exportuje zprávu ve formátech JSON, JUnit a HTML pro integraci se systémy monitoringu.

Práce s GraphQL a WebSocket

GraphQL požadavky se v Postman odesílají přes POST na jediný endpoint s tělem ve formátu JSON. Karta GraphQL (Beta) poskytuje vizuální editor se zvýrazněním syntaxe, automatickým doplňováním polí a schématem. Proměnné požadavku se předávají v samostatném panelu Variables.

Testování WebSocket a Socket.IO

Postman podporuje WebSocket připojení přes samostatné rozhraní s panelem zpráv. Lze odesílat textové a binární zprávy, prohlížet historii připojení a automaticky se znovu připojit při přerušení. Klient Socket.IO funguje v režimu kompatibility s protokolem Engine.IO.

javascript
// WebSocket test v Postman přes pm API
const ws = new WebSocket("wss://echo.websocket.org");
ws.onmessage = (event) => {
    pm.test("Echo response received", () => {
        pm.expect(event.data).to.eql("Hello");
    });
};

Mock servery a monitoring v Postman

Mock servery umožňují emulovat API endpointy na základě existujících kolekcí. To je užitečné, když backend ještě není hotový, ale frontend nebo mobilní aplikace se již vyvíjí. Mock server vrací příklad odpovědi z kolekce se správnými hlavičkami a kódem stavu.

Vytvoření mock serveru

Mock server se vytvoří z kolekce jedním kliknutím: vyberte kolekci → Mock Servers → Add a new mock server. Postman generuje jedinečné URL, které lze použít v kódu aplikace místo skutečného API. Pro každý požadavek kolekce mock vrací uloženou Example Response, což umožňuje testovat UI před dokončením backendu.

Monitoring API přes Postman Monitors

Monitors spouštějí kolekci podle plánu (každých 5 minut, hodinu nebo den) a kontrolují dostupnost a správnost API. Při selhání testu monitor odešle upozornění na e-mail nebo do Slacku. Monitoring funguje z cloudu Postman, nevyžaduje samostatný server a podporuje až 10 000 požadavků měsíčně v bezplatném tarifu.

javascript
// Test pro monitoring: kontrola doby odezvy
pm.test("Response time < 2000ms", () => {
    pm.expect(pm.response.responseTime).to.be.below(2000);
});

pm.test("Content-Type is JSON", () => {
    pm.response.to.have.header("Content-Type");
});

Bezpečnost a správa tajemství

Postman poskytuje mechanismy pro bezpečnou práci s API klíči. Proměnné typu Secret se šifrují a nezobrazují se v rozhraní. Pro týmovou práci použijte Workspace s rolemi Admin, Editor a Viewer.

Šifrování proměnných

Při vytváření proměnné prostředí vyberte typ Secret — hodnota se skrývá hvězdičkami ve všech rozhraních. Tajemství se při sdílení neexportují do kolekce a nezobrazují se v protokolech Newman. Hesla a tokeny se doporučuje ukládat pouze v proměnných Secret.

Integrace s Vault

Postman podporuje integraci s HashiCorp Vault a AWS Secrets Manager. Pre-request skripty mohou dynamicky vyžadovat tajemství z externího úložiště, což vylučuje ukládání citlivých údajů v souborech kolekce a prostředí.

Bezpečnost a správa tajemství

Postman poskytuje mechanismy pro bezpečnou práci s API klíči. Proměnné typu Secret se šifrují a nezobrazují se v rozhraní. Pro týmovou práci použijte Workspace s rolemi Admin, Editor a Viewer.

Šifrování proměnných

Při vytváření proměnné prostředí vyberte typ Secret — hodnota se skrývá hvězdičkami ve všech rozhraních. Tajemství se při sdílení neexportují do kolekce a nezobrazují se v protokolech Newman. Hesla a tokeny se doporučuje ukládat pouze v proměnných Secret.

Integrace s Vault

Postman podporuje integraci s HashiCorp Vault a AWS Secrets Manager. Pre-request skripty mohou dynamicky vyžadovat tajemství z externího úložiště, což vylučuje ukládání citlivých údajů v souborech kolekce a prostředí.

Často kladené otázky

Čím se Postman liší od Insomnie?

Postman nabízí širší ekosystém: kolekce, prostředí, monitoring, mock servery a Newman pro CI/CD. Insomnia se zaměřuje na lehkost a rychlost s menší spotřebou paměti. Postman se lépe hodí pro týmovou práci, Insomnia — pro individuální použití.

Jak předat autorizační token mezi požadavky?

V Tests prvního požadavku uložte token do environment: pm.environment.set("token", pm.response.json().token). Ve druhém požadavku použijte proměnnou {`{`}$token${`}`} v hlavičce Authorization. Runner automaticky dosadí hodnotu při sekvenčním spuštění.

Lze do Postman importovat příkaz cURL?

Ano, přes tlačítko Import → Raw Text. Postman automaticky analyzuje příkaz cURL a vytvoří požadavek s hlavičkami, metodou a tělem. Podporovány jsou všechny flagy cURL, včetně -H, -d, -F a -u. Zpětná konverze je dostupná přes tlačítko Code (<>).

Jak testovat GraphQL v Postman?

Použijte POST požadavek s tělem JSON: {"query": "..."}. Karta GraphQL poskytuje vizuální editor s načtením schématu přes Introspection Query. Proměnné požadavku se předávají v poli variables stejného objektu JSON.

Co je Newman a k čemu je potřeba?

Newman je konzolová verze Postman pro spouštění kolekcí v CI/CD. Instaluje se přes npm, podporuje HTML reporty a integraci s Jenkins, GitHub Actions a GitLab CI. Umožňuje automatizovat regresní testování API bez grafického rozhraní.

Závěry

  • Postman — univerzální platforma pro testování REST, GraphQL, WebSocket a gRPC API s 25 miliony uživatelů.
  • Kolekce sdružují požadavky podle projektů s podporou vnořených složek a společných skriptů.
  • Proměnné prostředí zajišťují bezproblémové přepínání mezi dev, staging a production bez ruční úpravy.
  • Automatizace testů se realizuje přes JavaScript skripty s objektem pm a Collection Runner pro hromadné spuštění.
  • Newman se integruje do CI/CD pipeline pro regresní testování API při každém nasazení.
  • Dynamické proměnné zjednodušují testování s jedinečnými daty přes $guid, $timestamp a $randomInt.
  • Podpora WebSocket a GraphQL rozšiřuje oblast použití Postman nad rámec klasických REST požadavků.

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také