Postman: bu nədir, API-nin test edilməsi və sorğularla işləmək

Müəllif: IT Sectr Dərc olunub: 2026-05-08 Oxuma vaxtı: 9 dəq

Postman — qrafik interfeysli, REST, GraphQL, WebSocket və gRPC protokollarını dəstəkləyən API test platformasıdır. Alət HTTP-sorğuları yaratmağa və göndərməyə, onları kolleksiyalarda təşkil etməyə, skriptlər vasitəsilə testləri avtomatlaşdırmağa və endpointlər üzrə sənədləşmə yaratmağa imkan verir. Postman Learning Center (2026) məlumatlarına görə, platformadan dünyada 25 milyondan çox tərtibatçı istifadə edir.

Əsas məqamlar

  • Postman — vizual sorğu redaktoru, kolleksiyalar və mühit dəyişənləri olan universal API-klientdir.
  • Collections sorğuları qruplarda birləşdirir və JavaScript yoxlamaları ilə Collection Runner vasitəsilə işə salmağa imkan verir.
  • Mühit dəyişənləri sorğuları əl ilə dəyişmədən dev, staging və production arasında keçid etməyə imkan verir.
  • Test avtomatlaşdırması asinxron yoxlamalarla JavaScript dilində Pre-request Scripts və Tests vasitəsilə həyata keçirilir.
  • Sənədləşmə Markdown dəstəyi və müxtəlif dillərdə kod nümunələri ilə kolleksiya əsasında avtomatik yaradılır.

Postman nədir və əsas imkanlar

Postman — masaüstü proqram (Windows, macOS, Linux) və veb-versiya kimi mövcud olan API hazırlama və test platformasıdır. 2012-ci ildə Chrome üçün genişləndirmə kimi yaradılmış Postman monitoring, mock-serverlər və müştəri kodu generasiyası dəstəyi ilə tamhüquqlu ekosistemə çevrilib.

Sorğu və cavab formatları

Postman bütün HTTP-metodlarını dəstəkləyir: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS. Sorğunun gövdəsi JSON, XML, form-data, x-www-form-urlencoded və binary formatlarında ola bilər. Cavab sintaksis işıqlandırması, Pretty-print və xam başlıqlara baxmaq imkanı ilə göstərilir.

Autentifikasiya dəstəyi

Daxili autentifikasiya növlərinə Bearer Token, Basic Auth, Digest Auth, OAuth 1.0, OAuth 2.0, API Key və AWS Signature daxildir. Postman seçilmiş növə uyğun olaraq Authorization başlığını avtomatik əlavə edir ki, bu da tokenləri əl ilə kopyalamadan qorunan endpointlərin testini sürətləndirir.

Postman interfeysi və naviqasiya

Postman interfeysi yan paneldən (Collections, APIs, Environments), iş sahəsindən (Request Builder/Response Viewer) və alt paneldən (Console, Runner) ibarətdir. Params tabı URL-in query-parametrlərini cədvəl şəklində redaktə etməyə, Headers tabı isə HTTP-başlıqlarını idarə etməyə imkan verir.

Postman Console

Console (View → Show Postman Console) bütün şəbəkə sorğularını və cavablarını xronoloji ardıcıllıqla, o cümlədən aralıq yönləndirmələri və başlıqları qeydə alır. Bu, standart Response Viewer yalnız son nəticəni göstərəndə mürəkkəb OAuth axınlarının və yönləndirmə zəncirlərinin sazlanması üçün əvəzolunmaz alətdir.

Workspaces və komanda işi

Postman Fork və Merge vasitəsilə kolleksiyaların versiyalaşdırılması ilə komanda iş məkanlarını (Workspaces) dəstəkləyir. Komanda üzvləri sorğulara şərh yaza, dəyişikliklər təklif edə və kolleksiyaları real vaxtda sinxronlaşdıra bilər. Public Workspace xarici tərtibatçılar üçün API-sənədləşməni dərc etməyə imkan verir.

HTTP-sorğularının yaradılması və göndərilməsi

Əsas sorğu Postman-də HTTP-metodunun seçilməsi və ünvan sətrinə URL daxil edilməsi ilə yaradılır. Göndərmədən sonra cavab status kodu, icra müddəti və ölçüsü ilə alt paneldə göstərilir. Sorğu parametrləri daxiletmə zamanı avtomatik kodlaşdırılır.

Dinamik dəyişənlər və snippetlər

URL-də və sorğunun gövdəsində {`{`}}$variable${`}`} formatında dinamik dəyişənlərdən istifadə oluna bilər. Daxili dəyişənlər {`{`}$guid${`}`}, {`{`}$timestamp${`}`}{`{`}$randomInt${`}`} hər sorğu üçün unikal dəyərlər yaradır. Kod snippetləri cURL, Python, JavaScript, Kotlin, Swift və digər dillərdə ekvivalent sorğu yaradan Code () düyməsi vasitəsilə mövcuddur.

javascript
// Pre-request skriptinin nümunəsi: HMAC-imzasının generasiyası
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()
});

Kolleksiyalar və mühit dəyişənləri

Kolleksiyalar layihə və ya funksional modul üzrə birləşdirilmiş əlaqəli sorğu qruplarıdır. Hər kolleksiya iç-içə qovluqlar, ümumi başlıqlar və kolleksiyadakı hər sorğudan əvvəl icra olunan Pre-request skriptləri ehtiva edə bilər. Sorğuların sırası sürükləmə ilə təyin edilir.

Mühit dəyişənləri və qlobal dəyişənlər

Postman dəyişənlərin beş səviyyəsini dəstəkləyir: global, collection, environment, data və local. Münaqişələrin həlli prioriteti — lokaldan qlobala doğru. Environment-faylları müxtəlif mühitlər üçün açar-dəyər cütlərini ehtiva edir: development, staging, production. Mühit dəyişdirildikdə bütün URL-lər və tokenlər avtomatik dəyişir.

SəviyyəGörünmə sahəsiPrioritet
LocalCari sorğu1 (ən yüksək)
DataCollection Runner (CSV/JSON-dan)2
EnvironmentAktiv mühit3
CollectionBütün kolleksiya4
GlobalBütün iş məkanı5

Skriptlər vasitəsilə API testinin avtomatlaşdırılması

Postman cavab alındıqdan sonra icra olunan Tests tabında JavaScript ilə test yazmağa imkan verir. Testlər status kodunu, cavabın gövdəsini, başlıqları və icra müddətini yoxlayır. Nəticələr rəngli keçid göstəricisi ilə Test Results panelində göstərilir.

pm kitabxanası və sorğuların zəncirlənməsi

pm obyekti cavabla işləmək üçün metodlar təqdim edir: pm.response, pm.expect, pm.variables. Sorğuların zəncirlənməsi bir sorğunun cavabından alınan məlumatların dəyişəndə saxlanması və növbəti sorğuda istifadəsi ilə həyata keçirilir. Bu, API-zəngləri ardıcıllığı ilə inteqrasiya testlərinin qurulmasının və biznes-məntiqin yoxlanmasının əsasıdır.

javascript
// Test: cavabın strukturunun yoxlanması və tokenin saxlanması
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 və Newman

Collection Runner kolleksiyanın bütün sorğularını ardıcıl işə salır və hər addımda testləri icra edir. Newman — CI/CD-pipeline-lar (Jenkins, GitHub Actions, GitLab CI) üçün Postman-in konsol versiyasıdır. Newman monitoring sistemləri ilə inteqrasiya üçün hesabatı JSON, JUnit və HTML formatlarında ixrac edir.

GraphQL və WebSocket ilə iş

GraphQL sorğuları Postman-də JSON formatında gövdə ilə vahid endpointə POST vasitəsilə göndərilir. GraphQL (Beta) tabı sintaksis işıqlandırması, sahələrin avtomatik tamamlanması və sxem ilə vizual redaktoru təqdim edir. Sorğu dəyişənləri ayrıca Variables panelində ötürülür.

WebSocket və Socket.IO testi

Postman mesaj paneli ilə ayrıca interfeys vasitəsilə WebSocket-əqlaqələrini dəstəkləyir. Mətn və ikilik mesajlar göndərmək, əlaqə tarixçəsinə baxmaq və qırılma zamanı avtomatik yenidən qoşulmaq olar. Socket.IO klienti Engine.IO protokolu ilə uyğunluq rejimində işləyir.

javascript
// pm API vasitəsilə Postman-də WebSocket testi
const ws = new WebSocket("wss://echo.websocket.org");
ws.onmessage = (event) => {
    pm.test("Echo response received", () => {
        pm.expect(event.data).to.eql("Hello");
    });
};

Mock-serverlər və Postman-də monitoring

Mock-serverlər mövcud kolleksiyalar əsasında API-endpointləri emulyasiya etməyə imkan verir. Bu, backend hələ hazır olmadıqda, frontend və ya mobil tətbiq artıq hazırlandıqda faydalıdır. Mock-server kolleksiyadan cavab nümunəsini düzgün başlıqlar və status kodu ilə qaytarır.

Mock-serverin yaradılması

Mock-server kolleksiyadan bir kliklə yaradılır: kolleksiyanı seçin → Mock Servers → Add a new mock server. Postman real API əvəzinə tətbiqin kodunda istifadə oluna bilən unikal URL yaradır. Kolleksiyanın hər sorğusu üçün mock Example Response-u qaytarır ki, bu da backend tamamlanana qədər UI-ni yoxlamağa imkan verir.

Postman Monitors vasitəsilə API monitoringi

Monitors kolleksiyanı cədvəl üzrə (hər 5 dəqiqə, saat və ya gün) işə salır və API-nin əlçatanlığını və düzgünlüyünü yoxlayır. Test uğursuz olarsa, monitor email və ya Slack-ə bildiriş göndərir. Monitoring Postman buludundan işləyir, ayrıca server tələb etmir və pulsuz tarifdə ayda 10 000 sorğuya qədər dəstəkləyir.

javascript
// Monitoring üçün test: cavab müddətinin yoxlanması
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");
});

Təhlükəsizlik və sirlərin idarə edilməsi

Postman API-açarları ilə təhlükəsiz iş üçün mexanizmlər təqdim edir. Secret tipli dəyişənlər şifrələnir və interfeysdə göstərilmir. Komanda işi üçün Admin, Editor və Viewer rolları ilə Workspace istifadə edin.

Dəyişənlərin şifrələnməsi

Mühit dəyişəni yaradarkən Secret növünü seçin — dəyər bütün interfeyslərdə ulduzlarla gizlədilir. Sirlər paylaşma zamanı kolleksiyaya ixrac edilmir və Newman jurnallarında göstərilmir. Parolları və tokenləri yalnız Secret dəyişənlərində saxlamaq tövsiyə olunur.

Vault ilə inteqrasiya

Postman HashiCorp Vault və AWS Secrets Manager ilə inteqrasiyanı dəstəkləyir. Pre-request skriptləri həssas məlumatların kolleksiya və mühit fayllarında saxlanmasını istisna edərək, sirləri xarici anbardan dinamik şəkildə soruşa bilər.

Təhlükəsizlik və sirlərin idarə edilməsi

Postman API-açarları ilə təhlükəsiz iş üçün mexanizmlər təqdim edir. Secret tipli dəyişənlər şifrələnir və interfeysdə göstərilmir. Komanda işi üçün Admin, Editor və Viewer rolları ilə Workspace istifadə edin.

Dəyişənlərin şifrələnməsi

Mühit dəyişəni yaradarkən Secret növünü seçin — dəyər bütün interfeyslərdə ulduzlarla gizlədilir. Sirlər paylaşma zamanı kolleksiyaya ixrac edilmir və Newman jurnallarında göstərilmir. Parolları və tokenləri yalnız Secret dəyişənlərində saxlamaq tövsiyə olunur.

Vault ilə inteqrasiya

Postman HashiCorp Vault və AWS Secrets Manager ilə inteqrasiyanı dəstəkləyir. Pre-request skriptləri həssas məlumatların kolleksiya və mühit fayllarında saxlanmasını istisna edərək, sirləri xarici anbardan dinamik şəkildə soruşa bilər.

Tez-tez verilən suallar

Postman Insomnia-dan nə ilə fərqlənir?

Postman daha geniş ekosistem təklif edir: kolleksiyalar, mühitlər, monitoring, mock-serverlər və CI/CD üçün Newman. Insomnia yüngüllük və sürətə, daha az yaddaş istehlakına fokuslanır. Postman komanda işi üçün, Insomnia isə fərdi istifadə üçün daha uyğundur.

Avtorizasiya tokenini sorğular arasında necə ötürmək olar?

Birinci sorğunun Tests tabında tokeni environment-ə saxlayın: pm.environment.set("token", pm.response.json().token). İkinci sorğuda Authorization başlığında {`{`}$token${`}`} dəyişənindən istifadə edin. Runner ardıcıl işə salma zamanı dəyəri avtomatik əvəz edir.

Postman-də cURL əmrini idxal etmək mümkündürmü?

Bəli, Import → Raw Text düyməsi vasitəsilə. Postman cURL-əmrini avtomatik təhlil edir və başlıqlar, metod və gövdə ilə sorğu yaradır. -H, -d, -F və -u daxil olmaqla bütün cURL flaqqları dəstəklənir. Əks konversiya Code (<>) düyməsi ilə mümkündür.

Postman-də GraphQL-i necə test etmək olar?

JSON-gövdəsi ilə POST sorğusundan istifadə edin: {"query": "..."}. GraphQL tabı Introspection Query vasitəsilə sxemi yükləyən vizual redaktor təqdim edir. Sorğu dəyişənləri eyni JSON-obyektinin variables sahəsində ötürülür.

Newman nədir və nə üçün lazımdır?

Newman — CI/CD-də kolleksiyaları işə salmaq üçün Postman-in konsol versiyasıdır. npm vasitəsilə quraşdırılır, HTML-hesabatları və Jenkins, GitHub Actions və GitLab CI ilə inteqrasiyanı dəstəkləyir. Qrafik interfeys olmadan API-nin reqressiya testlərini avtomatlaşdırmağa imkan verir.

Yekunlar

  • Postman — 25 milyon istifadəçisi olan REST, GraphQL, WebSocket və gRPC API-nin testi üçün universal platformadır.
  • Kolleksiyalar iç-içə qovluqlar və ümumi skriptlər dəstəyi ilə sorğuları layihələr üzrə birləşdirir.
  • Mühit dəyişənləri əl ilə redaktə etmədən dev, staging və production arasında fasiləsiz keçidi təmin edir.
  • Test avtomatlaşdırması pm obyekti ilə JavaScript-skriptləri və toplu işə salma üçün Collection Runner vasitəsilə həyata keçirilir.
  • Newman hər yerləşdirmədə API-nin reqressiya testi üçün CI/CD-pipeline-larına inteqrasiya olunur.
  • Dinamik dəyişənlər $guid, $timestamp və $randomInt vasitəsilə unikal məlumatlarla testi sadələşdirir.
  • WebSocket və GraphQL dəstəyi Postman-in tətbiq sahəsini klassik REST-sorğularından kənara genişləndirir.

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun