Postman — plattform för API-testning med grafiskt gränssnitt som stöder protokollen REST, GraphQL, WebSocket och gRPC. Verktyget gör det möjligt att skapa och skicka HTTP-förfrågningar, organisera dem i samlingar, automatisera testning via skript och generera dokumentation för endpoints. Enligt uppgifter från Postman Learning Center (2026) används plattformen av över 25 miljoner utvecklare världen över.
Viktigaste punkterna
Postman är en plattform för utveckling och testning av API:er, tillgänglig som skrivbordsapp (Windows, macOS, Linux) och webbversion. Ursprungligen skapat som tillägg för Chrome 2012 har Postman vuxit till ett fullvärdigt ekosystem med stöd för övervakning, mock-servrar och generering av klientkod.
Postman stöder alla HTTP-metoder: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS. Förfrågans innehåll kan vara i formaten JSON, XML, form-data, x-www-form-urlencoded och binary. Svaret visas med syntaxmarkering, Pretty-print och möjlighet att visa råa rubriker.
De inbyggda autentiseringstyperna omfattar Bearer Token, Basic Auth, Digest Auth, OAuth 1.0, OAuth 2.0, API Key och AWS Signature. Postman lägger automatiskt till Authorization-rubriken enligt vald typ, vilket snabbar upp testningen av skyddade endpoints utan att manuellt kopiera tokens.
Postmans gränssnitt består av sidopanelen (Collections, APIs, Environments), arbetsområdet (Request Builder/Response Viewer) och den nedre panelen (Console, Runner). Fliken Params gör det möjligt att redigera URL:ens query-parametrar i tabellform, fliken Headers — att hantera HTTP-rubriker.
Console (View → Show Postman Console) loggar alla nätverksförfrågningar och svar i kronologisk ordning, inklusive mellanliggande omdirigeringar och rubriker. Det är ett oumbärligt verktyg vid felsökning av komplexa OAuth-flöden och kedjor av omdirigeringar, när den vanliga Response Viewer bara visar slutresultatet.
Postman stöder teamarbetsytor (Workspaces) med versionshantering av samlingar via Fork och Merge. Teammedlemmar kan kommentera förfrågningar, föreslå ändringar och synkronisera samlingar i realtid. Public Workspace gör det möjligt att publicera API-dokumentation för externa utvecklare.
En grundläggande förfrågan i Postman skapas genom att välja HTTP-metod och ange en URL i adressfältet. Efter att den skickats visas svaret i den nedre panelen med statuskod, exekveringstid och storlek. Förfrågans parametrar kodas automatiskt vid inmatning.
I URL:en och förfrågans innehåll kan dynamiska variabler i formatet {`{`}}$variable${`}`} användas. De inbyggda variablerna {`{`}$guid${`}`}, {`{`}$timestamp${`}`} och {`{`}$randomInt${`}`} genererar unika värden för varje förfrågan. Kodsnuttar finns via knappen Code (>), som genererar en motsvarande förfrågan i cURL, Python, JavaScript, Kotlin, Swift och andra språk.
// Exempelskript i Pre-request: generering av HMAC-signatur
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()
});
Samlingar är grupper av relaterade förfrågningar, sammanförda efter projekt eller funktionsmodul. Varje samling kan innehålla kapslade mappar, gemensamma rubriker och Pre-request-skript som körs före varje förfrågan i samlingen. Förfrågningarnas ordning ställs in genom att dra.
Postman stöder fem nivåer av variabler: global, collection, environment, data och local. Prioritet för konfliktlösning — från lokala till globala. Environment-filer innehåller nyckel-värde-par för olika miljöer: development, staging, production. Byte av miljö ändrar automatiskt alla URL:er och tokens.
| Nivå | Synlighetsområde | Prioritet |
|---|---|---|
| Local | Aktuell förfrågan | 1 (högst) |
| Data | Collection Runner (från CSV/JSON) | 2 |
| Environment | Aktiv miljö | 3 |
| Collection | Hela samlingen | 4 |
| Global | Hela arbetsytan | 5 |
Postman gör det möjligt att skriva tester i JavaScript på fliken Tests, som körs efter att svaret mottagits. Testerna kontrollerar statuskoden, svarets innehåll, rubrikerna och exekveringstiden. Resultaten visas på panelen Test Results med färgindikator för godkänt.
Objektet pm tillhandahåller metoder för att arbeta med svaret: pm.response, pm.expect, pm.variables. Kedjning av förfrågningar genomförs genom att spara data från svaret på en förfrågan i en variabel och använda den i nästa. Detta är grunden för att bygga integrationstester och verifiera affärslogik genom en sekvens av API-anrop.
// Test: kontroll av svarsstrukturen och spara token
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 kör alla förfrågningar i samlingen sekventiellt och utför tester vid varje steg. Newman — konsolversion av Postman för CI/CD-pipelines (Jenkins, GitHub Actions, GitLab CI). Newman exporterar rapporten i formaten JSON, JUnit och HTML för integration med övervakningssystem.
GraphQL-förfrågningar skickas i Postman via POST till en enda endpoint med innehåll i JSON-format. Fliken GraphQL (Beta) tillhandahåller en visuell redigerare med syntaxmarkering, autokomplettering av fält och schema. Förfrågans variabler överförs på en separat panel Variables.
Postman stöder WebSocket-anslutningar via ett separat gränssnitt med meddelandepanel. Man kan skicka text- och binära meddelanden, visa anslutningshistorik och automatiskt återansluta vid avbrott. Socket.IO-klienten fungerar i kompatibilitetsläge med Engine.IO-protokollet.
// WebSocket-test i Postman via 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-servrar gör det möjligt att emulera API-endpoints baserat på befintliga samlingar. Detta är användbart när backend inte är klar än, medan frontend eller mobilappen redan utvecklas. Mock-servern returnerar ett exempelsvar från samlingen med korrekta rubriker och statuskod.
Mock-servern skapas från samlingen med ett klick: välj samlingen → Mock Servers → Add a new mock server. Postman genererar en unik URL som kan användas i appens kod i stället för det verkliga API:et. För varje förfrågan i samlingen returnerar mocken det sparade Example Response, vilket gör det möjligt att kontrollera UI:t innan backend är färdig.
Monitors kör samlingen enligt schema (var 5:e minut, timme eller dag) och kontrollerar API:ets tillgänglighet och korrekthet. Vid ett misslyckat test skickar monitorn en notis via e-post eller till Slack. Övervakningen fungerar från Postmans moln, kräver ingen separat server och stöder upp till 10 000 förfrågningar per månad i det kostnadsfria abonnemanget.
// Test för övervakning: kontroll av svarstid
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");
});
Postman tillhandahåller mekanismer för säker hantering av API-nycklar. Variabler av typen Secret krypteras och visas inte i gränssnittet. För teamarbete använder du en Workspace med rollerna Admin, Editor och Viewer.
Välj typen Secret när du skapar en miljövariabel — värdet döljs med asterisker i alla gränssnitt. Hemligheter exporteras inte till samlingen vid delning och visas inte i Newman-loggar. Lösenord och tokens rekommenderas att endast lagras i Secret-variabler.
Postman stöder integration med HashiCorp Vault och AWS Secrets Manager. Pre-request-skript kan dynamiskt hämta hemligheter från extern lagring, vilket utesluter lagring av känsliga uppgifter i samlingens och miljöns filer.
Postman tillhandahåller mekanismer för säker hantering av API-nycklar. Variabler av typen Secret krypteras och visas inte i gränssnittet. För teamarbete använder du en Workspace med rollerna Admin, Editor och Viewer.
Välj typen Secret när du skapar en miljövariabel — värdet döljs med asterisker i alla gränssnitt. Hemligheter exporteras inte till samlingen vid delning och visas inte i Newman-loggar. Lösenord och tokens rekommenderas att endast lagras i Secret-variabler.
Postman stöder integration med HashiCorp Vault och AWS Secrets Manager. Pre-request-skript kan dynamiskt hämta hemligheter från extern lagring, vilket utesluter lagring av känsliga uppgifter i samlingens och miljöns filer.
Vanliga frågor
Postman erbjuder ett bredare ekosystem: samlingar, miljöer, övervakning, mock-servrar och Newman för CI/CD. Insomnia fokuserar på lätthet och hastighet med lägre minnesanvändning. Postman passar bättre för teamarbete, Insomnia — för individuellt bruk.
Spara token i environment i Tests för den första förfrågan: pm.environment.set("token", pm.response.json().token). I den andra förfrågan använder du variabeln {`{`}$token${`}`} i Authorization-rubriken. Runner ersätter automatiskt värdet vid sekventiell körning.
Ja, via knappen Import → Raw Text. Postman tolkar automatiskt cURL-kommandot och skapar en förfrågan med rubriker, metod och innehåll. Alla cURL-flaggor stöds, inklusive -H, -d, -F och -u. Omvänd konvertering finns via knappen Code (<>).
Använd en POST-förfrågan med JSON-innehåll: {"query": "..."}. Fliken GraphQL tillhandahåller en visuell redigerare med inläsning av schema via Introspection Query. Förfrågans variabler överförs i fältet variables i samma JSON-objekt.
Newman är konsolversionen av Postman för att köra samlingar i CI/CD. Det installeras via npm, stöder HTML-rapporter och integration med Jenkins, GitHub Actions och GitLab CI. Det gör det möjligt att automatisera regressionstestning av API:er utan grafiskt gränssnitt.
Slutsatser
Vi utvecklar en mobil applikation nyckelfärdigt
IT Sectr skapar iOS- och Android-applikationer för startups och företag sedan 2017. Vi ger dig råd och föreslår den bästa lösningen.
Läs också