2.8 Pengujian API Dasar Menggunakan Postman
![]() |
Hai Digiers! Dalam pengembangan aplikasi modern, API (Application Programming Interface) menjadi jembatan penting yang menghubungkan berbagai komponen sistem baik itu frontend, backend, maupun layanan pihak ketiga seperti payment gateway atau layanan login sosial media. Hampir semua aplikasi yang kita gunakan sehari-hari seperti e-commerce, aplikasi transportasi online, layanan perbankan digital, hingga media sosial bergantung pada API untuk bisa berfungsi dengan baik.
Namun, seperti jembatan fisik, API juga bisa mengalami “kerusakan” jika tidak dibangun dan diuji dengan baik. Salah satu cara paling efisien untuk memastikan API bekerja sesuai harapan adalah dengan melakukan API testing. Di antara berbagai alat bantu yang tersedia, Postman menjadi salah satu tools paling populer dan mudah diakses, terutama bagi pemula yang ingin belajar memahami alur komunikasi antara client dan server.
Testing API secara manual menggunakan Postman dapat membantu kita:
● Memverifikasi bahwa endpoint bekerja sesuai spesifikasi.
● Memastikan bahwa input yang benar menghasilkan output yang benar.
● Menangkap bug lebih awal sebelum sampai ke pengguna akhir.
● Mendokumentasikan dan menguji fitur secara kolaboratif dengan tim development.
Topik ini akan membekali kamu dengan pemahaman dasar mengenai bagaimana cara kerja API, bagaimana menguji fungsionalitasnya secara manual, serta mengenali berbagai jenis respons yang bisa dihasilkan oleh sebuah endpoint. Sebelum memulai pembelajaran pada topik ini, mari luangkan waktu sejenak untuk merefleksikan poin-poin berikut:
Pernahkah kamu menjumpai pesan error seperti “500 Internal Server Error” atau “404 Not Found” saat menggunakan aplikasi?
Menurutmu, mana yang lebih cepat ditemukan dan diperbaiki: bug di tampilan (UI) atau bug di API (komunikasi data)?
Digiers, sebelum memulai pembelajaran, mari kita pahami terlebih dahulu capaian yang ingin diraih dalam topik ini. Berikut adalah tujuan pembelajaran yang menjadi panduan dalam proses belajar:
● Melakukan konfigurasi awal dan pengujian request sederhana di Postman.
● Mengevaluasi validasi API login dan checkout di aplikasi e-commerce melalui studi kasus.
2.8.1 Konfigurasi awal dan pengujian request sederhana di Postman
Postman adalah alat bantu (tool) untuk menguji API yang sangat populer di kalangan developer dan QA, dengan lebih dari 20 juta pengguna. Postman menyediakan tampilan grafis yang ramah bagi pemula, memungkinkan pengguna mengirim request ke API, melihat response, serta membuat dokumentasi API dengan mudah.
Postman cocok digunakan untuk:
Mendesain dan mendokumentasikan API
Mengirim berbagai jenis request HTTP
Melihat dan menganalisis respons
Mengotomatisasi pengujian
Berkolaborasi antar tim
⬛ Apa Keuntungan Menggunakan Postman?
● Menjamin Kualitas: Membantu menjaga performa API tetap konsisten.
● Deteksi Dini Masalah: Shift-left testing memungkinkan perbaikan lebih awal.
● Efisiensi Waktu: Otomatisasi menghemat waktu dan tenaga.
● Siklus Iterasi Cepat: Integrasi CI/CD memungkinkan rilis cepat tanpa bug.
● Organisasi Uji yang Rapi: Koleksi dan environment memudahkan pengelolaan skenario uji.
● Integrasi CI Mudah: Postman mendukung tool CI terkenal seperti Jenkins, GitHub Actions, dsb.
● Dokumentasi Otomatis: Memudahkan kolaborasi antar tim dan stakeholder.
● Kolaborasi Real-time: Fitur versi dan sharing memungkinkan kerja tim yang sinkron.
● Mock Server dan Design Tool: Dapat mendesain dan menguji API bahkan sebelum backend tersedia.
⬛ Tampilan Awal Postman
Gambar 2.8.1 Tampilan Awal Postman
Postman berperan sebagai aplikasi klien yang berkomunikasi dengan server API. Berikut yang terjadi saat kamu mengklik tombol Send:
● Postman mengirim permintaan GET ke server API Postman Echo yang berada di alamat postman-echo.com.
● Server API menerima permintaan tersebut, memprosesnya, lalu mengirimkan kembali response ke Postman.
● Postman menerima response dari server dan menampilkannya di panel Response.
● Artinya, kamu berhasil menggunakan Postman untuk mengirim permintaan ke API dan mendapatkan response dari server.
Gambar 2.8.2 Cara Kerja Postman
Sumber Gambar: learning.postman.com
- Workspace: Ruang kerja bersama untuk mengelola koleksi dan environment pengujian API.
- Collection: Kumpulan request yang dikelompokkan berdasarkan fitur atau layanan tertentu, memudahkan manajemen dan eksekusi.
Environments
Digunakan untuk menyimpan dan mengelola sekumpulan variabel yang bisa digunakan kembali dalam request.
Requests
- HTTP Methods: Berisi pilihan metode HTTP seperti: GET, POST, PUT, DELETE, dll.
- Endpoint URL: Tempat kamu memasukkan endpoint URL dari API yang ingin diuji.
- Params, Authorization, Headers, Body, Scripts Tab
- Params Tab: menambahkan query parameters dalam format key-value.
- Authorization Tab: Tempat mengatur autentikasi, seperti Bearer Token, Basic Auth, API Key, dll.
- Headers Tab: Menambahkan custom headers ke dalam request.
- Body Tab: menuliskan data payload untuk dikirim ke server. Bisa berupa raw, form-data, x-www-form-urlencoded, dll.
- Scripts Tab: Pre-request
Tempat kamu bisa menulis JavaScript yang akan dijalankan sebelum request dikirim. Umumnya digunakan untuk generate token atau manipulasi variabel. - Scripts Tab: Post-response
Tempat menulis script assertion (pengujian) yang dijalankan setelah respons diterima. Misalnya memeriksa status code, waktu respons, isi body, dll.
- Environment: memilih environment yang sudah di-set sebelumnya
- Tombol Send Request: mengirim request ke server API
- Response
- Status: Menampilkan kode status (seperti 200 OK, 401 Unauthorized, dll).
- Time dan Size: Menunjukkan waktu respons dan ukuran data.
- Body: Menampilkan isi respons (biasanya dalam format JSON). Postman menyediakan beberapa tampilan:
● Pretty: Format JSON yang mudah dibaca
● Raw: Tampilan mentah data
● Preview: Jika response berupa HTML
- Headers: Header yang dikembalikan oleh server.
- Cookies: Jika server mengirimkan cookie, ditampilkan di sini.
- Pilih workspace → klik New Request.
- Pilih metode HTTP: GET, POST, PUT, DELETE, dll.
- Masukkan endpoint (misal: https://api.example.com/users).
- Tambahkan parameter, header, dan body jika diperlukan.
- Klik Send untuk melihat respons dari server.
● 200: Sukses
● 400: Permintaan tidak valid
● 401: Tidak terautentikasi
● 404: Data tidak ditemukan
● 500: Kesalahan server
Postman adalah salah satu tool terbaik untuk developer dan QA dalam pengujian API. Dengan tampilan yang intuitif dan fitur pengujian manual maupun otomatis, Postman memungkinkan pengujian dilakukan dengan efisien dan akurat. Panduan ini menunjukkan bahwa siapa pun, bahkan tanpa latar belakang coding yang kuat, bisa memulai memahami dan melakukan pengujian API. Dengan pengujian yang baik sejak awal, kamu akan membantu tim merilis produk yang stabil, aman, dan siap digunakan oleh pengguna akhir.
⬛ Postman Sebagai Tool All-in-One untuk API
● Tidak hanya untuk pengujian, Postman kini berkembang menjadi platform yang mencakup seluruh siklus hidup API: mulai dari desain, simulasi (mock), pengujian, dokumentasi, hingga monitoring performa.
● Postman CLI (newman) memungkinkan integrasi test ke dalam pipeline DevOps.
● Collection menyimpan request secara terstruktur, sehingga kamu bisa membuat testing suite berdasarkan fitur aplikasi.
● Environment memungkinkan kamu menyimpan variabel (seperti {{base_url}}, {{auth_token}}) agar pengujian bisa dilakukan pada lingkungan berbeda (dev, staging, production) hanya dengan mengganti file environment.
Contoh variabel:
{ |
Automated Testing dengan Test Script
Di tab Tests, kamu bisa menulis assertion menggunakan JavaScript sederhana:
pm.test("Status code is 200", function () { |
Test ini dieksekusi otomatis setiap kali request dijalankan, cocok untuk regression test.
Chaining Request (Request Bertahap)
Postman mendukung passing data antar request melalui global variable atau environment variable.
Misal: POST /login → simpan token → digunakan oleh GET /profile.
var jsonData = pm.response.json(); |
● Bisa digunakan untuk membuat endpoint palsu yang meniru respons backend.
● Sangat berguna saat tim frontend butuh uji integrasi sebelum backend selesai dibangun.
● Kamu bisa menjadwalkan monitor di Postman agar API diuji berkala (misalnya, setiap pagi), dan menerima notifikasi saat terjadi error.
● Hasil pengujian dapat di-export dalam format HTML atau JSON untuk dokumentasi QA.
● Dengan interface GUI, QA yang belum mahir coding tetap bisa melakukan validasi, debug, dan menulis skenario test sederhana.
● Mendukung belajar bertahap menuju automation test atau REST Assured.
⬛ Studi Kasus
Kamu adalah QA untuk sebuah aplikasi user management. Aplikasi ini memiliki backend API dengan fitur: ambil data pengguna (GET) dan menambah user baru (POST). Contoh API Publik yang akan digunakan adalah: https://reqres.in/. REQRES adalah web yang menyediakan API dummy untuk latihan testing API.
Agar bisa menguji API tersebut, kamu akan menggunakan Postman.
Langkah-langkah Setup & Instalasi Postman
1. Unduh dan Install
● Buka: https://www.postman.com/downloads
● Pilih versi sesuai sistem operasi (Windows/Mac/Linux)
● Install dan login menggunakan akun Google atau buat akun Postman baru
● Klik menu Workspaces → Create Workspace
● Beri nama misalnya: API Testing 1
● Manage Access: pilih only you and invited people → Create
● Klik menu Collections, + Create New Collection
● Beri nama misalnya: Belajar API
Tampilan awal Postman setelah pembuatan Workspace & Collection
- Klik “No Environment” → Create Environments
- Tambahkan environment bernama Staging
- Tambahkan variable: base_url
- Tambahkan initial value: https://reqres.in/
- Klik tombol “Save”
Tampilan setelah penambahan environment Staging, dengan variable base_url
Buat collection terlebih dahulu dengan cara “Create New Collection”, misal nama collection adalah Belajar API.
Sebelum membuat request, kamu wajib mendapatkan data API key terlebih dahulu, di mana key ini akan digunakan pada setiap request nantinya.
Caranya:
- Klik “Get Free API Key”
- Simpan value pada output “Your Free API Key”, yang nanti akan digunakan pada header di setiap request
- Klik Add a request → simpan request dengan nama: GET List Users
- Pilih metode GET, karena kita ingin mendapatkan data
- Input URL Endpoint: {{base_url}}/api/users?page=2
- Pada tab Headers → masukkan data berikut:
○ Key: x-api-key
○ Value: {value dari API key yang didapat pada https://reqres.in/ }
- Pilih Environment: Staging
- Klik tombol Save
- Klik Send
- Lihat response:
○ Status: 200 OK
Hasil: Dari response tersebut, API berhasil menampilkan data semua user.
Bagaimana jika kita ingin melihat data single user, misal data user dengan id = 2?
Maka kita bisa buat request baru dengan URL endpoint yang berbeda, yaitu {{base_url}}/api/users/2
⬛ GET Single User
- Klik Add a request → simpan request dengan nama: GET Single User
- Pilih metode GET, karena kita ingin mendapatkan data
- Input URL Endpoint: {{base_url}}/api/users/2
- Pada tab Headers → masukkan data berikut:
○ Key: x-api-key
○ Value: {value dari API key yang didapat pada https://reqres.in/ }
- Pilih Environment: Staging
- Klik tombol Save
- Klik Send
○ Status: 200 OK
Hasil: Dari response tersebut, API berhasil menampilkan data user dengan id = 2.
Bagaimana jika kita ingin melihat data single user yang tidak ada di database, misal data user dengan id = 23?
Maka kita bisa buat request baru dengan URL endpoint yang berbeda, yaitu {{base_url}}/api/users/23
⬛ GET Single User Not Found
- Klik Add a request → simpan request dengan nama: GET Single User Not Found
- Pilih metode GET, karena kita ingin mendapatkan data
- Input URL Endpoint: {{base_url}}/api/users/23
- Pada tab Headers → masukkan data berikut:
○ Key: x-api-key
○ Value: {value dari API key yang didapat pada https://reqres.in/ }
- Pilih Environment: Staging
- Klik tombol Save
- Klik Send
○ Status: 404 Not Found
Hasil: Dari response tersebut, API tidak menemukan data user dengan id = 23.
Case lain, bagaimana jika kita ingin melihat membuat data user baru?
Maka kita bisa buat request baru dengan URL endpoint yang berbeda, yaitu {{base_url}}/api/users
⬛ POST Create User
- Klik nama collection (Belajar API) → klik + Add request
- Simpan nama request dengan nama: POST Create User
- Pilih metode POST, karena kita ingin membuat/menambah data
- Input URL Endpoint: {{base_url}}/api/users
- Di tab Body, pilih format Raw, lalu isi bagian request body:
{ |
- Klik tombol Save
- Klik Send
- Lihat hasil:
○ Status: 200 OK
Hasil: Dari response tersebut, API berhasil membuat user dengan name = Morpheus dan job = leader, di mana user ini memiliki User ID = 408.
Kesimpulan:
● Kamu bisa melakukan:
○ GET untuk melihat daftar user
○ GET by ID untuk ambil data user berdasarkan ID
○ POST untuk menambah user baru