Postman: bu nima, API-ni test qilish va so'rovlar bilan ishlash

Muallif: IT Sectr Nashr etilgan: 2026-05-08 O'qish vaqti: 9 daq

Postman — REST, GraphQL, WebSocket va gRPC protokollarini qo'llab-quvvatlaydigan, grafik interfeysga ega API test platformasi. Asbob HTTP-so'rovlarini yaratish va yuborish, ularni kolleksiyalarda tashkil etish, skriptlar orqali testlarni avtomatlashtirish va endpointlar bo'yicha hujjatlarni yaratish imkonini beradi. Postman Learning Center (2026) ma'lumotlariga ko'ra, platformadan dunyo bo'ylab 25 milliondan ortiq dasturchi foydalanadi.

Asosiy jihatlar

  • Postman — vizual so'rov muharriri, kolleksiyalar va muhit o'zgaruvchilariga ega universal API-klient.
  • Collections so'rovlarni guruhlarga birlashtiradi va JavaScript tekshiruvlari bilan Collection Runner orqali ishga tushirish imkonini beradi.
  • Muhit o'zgaruvchilari so'rovlarni qo'lda o'zgartirmasdan dev, staging va production o'rtasida o'tish imkonini beradi.
  • Testlarni avtomatlashtirish asinxron tekshiruvlar bilan JavaScript tilidagi Pre-request Scripts va Tests orqali amalga oshiriladi.
  • Hujjatlar Markdown qo'llab-quvvatlashi va turli tillardagi kod namunalari bilan kolleksiya asosida avtomatik yaratiladi.

Postman nima va asosiy imkoniyatlar

Postman — API ishlab chiqish va test qilish platformasi bo'lib, ish stoli ilovasi (Windows, macOS, Linux) va veb-versiya sifatida mavjud. Dastlab 2012-yilda Chrome uchun kengaytma sifatida yaratilgan Postman monitoring, mock-serverlar va mijoz kodini yaratishni qo'llab-quvvatlaydigan to'laqonli ekotizimga aylandi.

So'rov va javob formatlari

Postman barcha HTTP-metodlarini qo'llab-quvvatlaydi: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS. So'rov tanasi JSON, XML, form-data, x-www-form-urlencoded va binary formatlarida bo'lishi mumkin. Javob sintaksisni ajratib ko'rsatish, Pretty-print va xom sarlavhalarni ko'rish imkoniyati bilan ko'rsatiladi.

Autentifikatsiyani qo'llab-quvvatlash

O'rnatilgan autentifikatsiya turlariga Bearer Token, Basic Auth, Digest Auth, OAuth 1.0, OAuth 2.0, API Key va AWS Signature kiradi. Postman tanlangan turga muvofiq Authorization sarlavhasini avtomatik qo'shadi, bu esa tokenlarni qo'lda nusxalashsiz himoyalangan endpointlarni test qilishni tezlashtiradi.

Postman interfeysi va navigatsiya

Postman interfeysi yon panel (Collections, APIs, Environments), ish maydoni (Request Builder/Response Viewer) va pastki paneldan (Console, Runner) iborat. Params yorlig'i URL-ning query-parametrlarini jadval ko'rinishida tahrirlash, Headers yorlig'i esa HTTP-sarlavhalarini boshqarish imkonini beradi.

Postman Console

Console (View → Show Postman Console) barcha tarmoq so'rovlari va javoblarini xronologik tartibda, jumladan oraliq qayta yo'naltirishlar va sarlavhalarni qayd qiladi. Bu standart Response Viewer faqat yakuniy natijani ko'rsatganda, murakkab OAuth oqimlari va qayta yo'naltirish zanjirlarini tuzatishda ajralmas vositadir.

Workspaces va jamoa ishi

Postman Fork va Merge orqali kolleksiyalarni versiyalash bilan jamoa ish maydonlarini (Workspaces) qo'llab-quvvatlaydi. Jamoa a'zolari so'rovlarga sharh yozishi, o'zgarishlar taklif qilishi va kolleksiyalarni real vaqtda sinxronlashtirishi mumkin. Public Workspace tashqi dasturchilar uchun API-hujjatlarini e'lon qilish imkonini beradi.

HTTP-so'rovlarini yaratish va yuborish

Asosiy so'rov Postman-da HTTP-metodini tanlash va manzil qatoriga URL kiritish orqali yaratiladi. Yuborilgandan so'ng javob status kodi, bajarilish vaqti va hajmi bilan pastki panelda ko'rsatiladi. So'rov parametrlari kiritish paytida avtomatik kodlanadi.

Dinamik o'zgaruvchilar va snippetlar

URL va so'rov tanasida {`{`}}$variable${`}`} formatida dinamik o'zgaruvchilardan foydalanish mumkin. O'rnatilgan {`{`}$guid${`}`}, {`{`}$timestamp${`}`} va {`{`}$randomInt${`}`} o'zgaruvchilari har bir so'rov uchun noyob qiymatlar yaratadi. Kod snippetlari cURL, Python, JavaScript, Kotlin, Swift va boshqa tillarda ekvivalent so'rov yaratadigan Code () tugmasi orqali mavjud.

javascript
// Pre-request skripti namunasi: HMAC-imzosini yaratish
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 va muhit o'zgaruvchilari

Kolleksiyalar — loyiha yoki funksional modul bo'yicha birlashtirilgan bog'liq so'rovlar guruhlari. Har bir kolleksiya ichki papkalar, umumiy sarlavhalar va kolleksiyadagi har bir so'rovdan oldin bajariladigan Pre-request skriptlarini o'z ichiga olishi mumkin. So'rovlar tartibi sudrab olib tashlash orqali o'rnatiladi.

Muhit o'zgaruvchilari va global o'zgaruvchilar

Postman o'zgaruvchilarning besh darajasini qo'llab-quvvatlaydi: global, collection, environment, data va local. Mojarolarni hal qilish ustuvorligi — lokalldan globalgacha. Environment-fayllari turli muhitlar uchun kalit-qiymat juftliklarini o'z ichiga oladi: development, staging, production. Muhitni almashtirish barcha URL va tokenlarni avtomatik o'zgartiradi.

DarajaKo'rinish doirasiUstuvorlik
LocalJoriy so'rov1 (eng yuqori)
DataCollection Runner (CSV/JSON'dan)2
EnvironmentFaol muhit3
CollectionButun kolleksiya4
GlobalButun ish maydoni5

Skriptlar orqali API testini avtomatlashtirish

Postman javob olingandan so'ng bajariladigan Tests yorlig'ida JavaScript tilida testlar yozish imkonini beradi. Testlar status kodini, javob tanasini, sarlavhalarni va bajarilish vaqtini tekshiradi. Natijalar o'tishning rangli ko'rsatkichi bilan Test Results panelida ko'rsatiladi.

pm kutubxonasi va so'rovlarni zanjirlash

pm obyekti javob bilan ishlash uchun metodlarni taqdim etadi: pm.response, pm.expect, pm.variables. So'rovlarni zanjirlash bir so'rov javobidagi ma'lumotlarni o'zgaruvchida saqlash va uni keyingisida ishlatish orqali amalga oshiriladi. Bu API-chaqiruvlar ketma-ketligi orqali integratsiya testlarini qurish va biznes-mantiqni tekshirishning asosidir.

javascript
// Test: javob strukturasini tekshirish va tokenni saqlash
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 va Newman

Collection Runner kolleksiyaning barcha so'rovlarini ketma-ket ishga tushiradi va har bosqichda testlarni bajaradi. Newman — CI/CD-payplaynlar (Jenkins, GitHub Actions, GitLab CI) uchun Postman-ning konsol versiyasi. Newman monitoring tizimlari bilan integratsiya uchun hisobotni JSON, JUnit va HTML formatlarida eksport qiladi.

GraphQL va WebSocket bilan ishlash

GraphQL so'rovlari Postman-da JSON formatidagi tana bilan yagona endpointga POST orqali yuboriladi. GraphQL (Beta) yorlig'i sintaksisni ajratib ko'rsatish, maydonlarni avtomatik to'ldirish va sxema bilan vizual muharrirni taqdim etadi. So'rov o'zgaruvchilari alohida Variables panelida uzatiladi.

WebSocket va Socket.IO testi

Postman xabar paneli bilan alohida interfeys orqali WebSocket-ulanishlarini qo'llab-quvvatlaydi. Matn va ikkilik xabarlarni yuborish, ulanish tarixini ko'rish va uzilishda avtomatik qayta ulanish mumkin. Socket.IO klienti Engine.IO protokoli bilan moslik rejimida ishlaydi.

javascript
// pm API orqali Postman-da 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-serverlar va Postman-da monitoring

Mock-serverlar mavjud kolleksiyalar asosida API-endpointlarni emulyatsiya qilish imkonini beradi. Bu backend hali tayyor bo'lmaganda, frontend yoki mobil ilova allaqachon ishlab chiqilayotganda foydalidir. Mock-server kolleksiyadan javob namunasini to'g'ri sarlavhalar va status kodi bilan qaytaradi.

Mock-server yaratish

Mock-server kolleksiyadan bir marta bosish bilan yaratiladi: kolleksiyani tanlang → Mock Servers → Add a new mock server. Postman haqiqiy API o'rniga ilova kodida ishlatish mumkin bo'lgan noyob URL yaratadi. Kolleksiyaning har bir so'rovi uchun mock saqlangan Example Responseni qaytaradi, bu esa backend tugagunga qadar UI-ni tekshirish imkonini beradi.

Postman Monitors orqali API monitoringi

Monitors kolleksiyani jadval bo'yicha (har 5 daqiqada, soatda yoki kunda) ishga tushiradi va API-ning mavjudligi va to'g'riligini tekshiradi. Test muvaffaqiyatsiz bo'lsa, monitor email yoki Slack-ga bildirishnoma yuboradi. Monitoring Postman bulutidan ishlaydi, alohida server talab qilmaydi va bepul tarifda oyiga 10 000 tagacha so'rovni qo'llab-quvvatlaydi.

javascript
// Monitoring uchun test: javob vaqtini tekshirish
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");
});

Xavfsizlik va sirlarni boshqarish

Postman API-kalitlari bilan xavfsiz ishlash mexanizmlarini taqdim etadi. Secret tipidagi o'zgaruvchilar shifrlanadi va interfeysda ko'rsatilmaydi. Jamoa ishi uchun Admin, Editor va Viewer rollari bilan Workspace-dan foydalaning.

O'zgaruvchilarni shifrlash

Muhit o'zgaruvchisini yaratishda Secret turini tanlang — qiymat barcha interfeyslarda yulduzchalar bilan yashiriladi. Sirlar ulashish paytida kolleksiyaga eksport qilinmaydi va Newman jurnallarida ko'rsatilmaydi. Parol va tokenlarni faqat Secret o'zgaruvchilarida saqlash tavsiya etiladi.

Vault bilan integratsiya

Postman HashiCorp Vault va AWS Secrets Manager bilan integratsiyani qo'llab-quvvatlaydi. Pre-request skriptlari maxfiy ma'lumotlarni kolleksiya va muhit fayllarida saqlashni istisno qilib, sirlarni tashqi ombordan dinamik so'rashi mumkin.

Xavfsizlik va sirlarni boshqarish

Postman API-kalitlari bilan xavfsiz ishlash mexanizmlarini taqdim etadi. Secret tipidagi o'zgaruvchilar shifrlanadi va interfeysda ko'rsatilmaydi. Jamoa ishi uchun Admin, Editor va Viewer rollari bilan Workspace-dan foydalaning.

O'zgaruvchilarni shifrlash

Muhit o'zgaruvchisini yaratishda Secret turini tanlang — qiymat barcha interfeyslarda yulduzchalar bilan yashiriladi. Sirlar ulashish paytida kolleksiyaga eksport qilinmaydi va Newman jurnallarida ko'rsatilmaydi. Parol va tokenlarni faqat Secret o'zgaruvchilarida saqlash tavsiya etiladi.

Vault bilan integratsiya

Postman HashiCorp Vault va AWS Secrets Manager bilan integratsiyani qo'llab-quvvatlaydi. Pre-request skriptlari maxfiy ma'lumotlarni kolleksiya va muhit fayllarida saqlashni istisno qilib, sirlarni tashqi ombordan dinamik so'rashi mumkin.

Ko'p so'raladigan savollar

Postman Insomnia'dan nimasi bilan farq qiladi?

Postman kengroq ekotizimni taklif etadi: kolleksiyalar, muhitlar, monitoring, mock-serverlar va CI/CD uchun Newman. Insomnia yengillik va tezlikka, kam xotira sarfiga e'tibor qaratadi. Postman jamoa ishi uchun, Insomnia — individual foydalanish uchun yaxshiroq mos keladi.

Avtorizatsiya tokenini so'rovlar orasida qanday uzatish mumkin?

Birinchi so'rovning Tests yorlig'ida tokenni environment-ga saqlang: pm.environment.set("token", pm.response.json().token). Ikkinchi so'rovda Authorization sarlavhasida {`{`}$token${`}`} o'zgaruvchisidan foydalaning. Runner ketma-ket ishga tushirishda qiymatni avtomatik qo'yadi.

Postman-da cURL buyrug'ini import qilish mumkinmi?

Ha, Import → Raw Text tugmasi orqali. Postman cURL buyrug'ini avtomatik tahlil qiladi va sarlavhalar, metod va tana bilan so'rov yaratadi. -H, -d, -F va -u kabi barcha cURL bayroqlari qo'llab-quvvatlanadi. Teskari konversiya Code (<>) tugmasi orqali mavjud.

Postman-da GraphQL-ni qanday test qilish mumkin?

JSON-tana bilan POST so'rovidan foydalaning: {"query": "..."}. GraphQL yorlig'i Introspection Query orqali sxemani yuklaydigan vizual muharrirni taqdim etadi. So'rov o'zgaruvchilari xuddi shu JSON obyektining variables maydonida uzatiladi.

Newman nima va u nima uchun kerak?

Newman — CI/CD-da kolleksiyalarni ishga tushirish uchun Postman-ning konsol versiyasi. npm orqali o'rnatiladi, HTML-hisobotlar va Jenkins, GitHub Actions va GitLab CI bilan integratsiyani qo'llab-quvvatlaydi. Grafik interfeysiz API regressiya testlarini avtomatlashtirish imkonini beradi.

Xulosalar

  • Postman — 25 million foydalanuvchiga ega REST, GraphQL, WebSocket va gRPC API-larini test qilish uchun universal platforma.
  • Kolleksiyalar ichki papkalar va umumiy skriptlar qo'llab-quvvatlashi bilan so'rovlarni loyihalar bo'yicha birlashtiradi.
  • Muhit o'zgaruvchilari qo'lda tahrirlashsiz dev, staging va production o'rtasida uzluksiz o'tishni ta'minlaydi.
  • Testlarni avtomatlashtirish pm obyektli JavaScript-skriptlar va ommaviy ishga tushirish uchun Collection Runner orqali amalga oshiriladi.
  • Newman har bir joylashtirishda API regressiya testi uchun CI/CD-payplaynlarga integratsiya qilinadi.
  • Dinamik o'zgaruvchilar $guid, $timestamp va $randomInt orqali noyob ma'lumotlar bilan testni soddalashtiradi.
  • WebSocket va GraphQL qo'llab-quvvatlashi Postman-ning qo'llanish doirasini klassik REST-so'rovlaridan tashqariga kengaytiradi.

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing