API Testing
Membahas konsep pengujian Application Programming Interface (API) untuk memverifikasi fungsi, respons, integrasi, dan kesesuaian layanan antar sistem.
Tujuan Pembelajaran
Target pembelajaran utama pada pertemuan ini dirangkum secara singkat agar mudah dipindai dan diikuti.
- Memahami konsep dan tujuan API Testing.
- Melakukan analisis terhadap fungsi dan respons API.
Koleksi materi pertemuan
Pilih materi yang ingin dibuka. Setiap kartu disusun agar lebih mudah dipindai, lebih hidup, dan tidak terasa monoton.
API Testing: Arsitektur REST, Protokol HTTP, Format JSON, dan Elemen Mandatory Field API
Materi ini membahas pengertian dan tipe API (Public, Partner, Internal, Composite), perbandingan arsitektur API (REST, RPC, SOAP, GraphQL), gaya arsitektur REST beserta method (GET, POST, PUT, DELETE) dan struktur URL-nya, konsep HTTP Request-Response dengan berbagai kode status (2xx-5xx), format pertukaran data JSON, serta elemen wajib dalam API request seperti URL, Method, Header, Params, Body, Status Code, Response Body, dan Message sebagai dasar untuk melakukan API Testing.
API Security Checklist: Authentication, Access Control, Input/Output, dan Monitoring
Checklist ini berisi panduan keamanan API mencakup autentikasi (hindari Basic Auth, gunakan JWT dengan secret yang baik dan TTL pendek), access control (rate limiting, HTTPS, HSTS, validasi redirect_uri, CSRF protection), validasi input, praktik pemrosesan data (proteksi endpoint, UUID, disable XXE), pengamanan output response (security headers, hindari data sensitif), serta praktik CI/CD dan monitoring (audit, code review, centralized logging, IDS/IPS) untuk membangun API yang aman.
Postman: REST Client untuk Pengujian API
Materi ini membahas pengertian Postman sebagai aplikasi REST Client untuk uji coba REST API, alasan Postman banyak digunakan tester karena UI yang sederhana dan fitur automation untuk mengatur serta menulis rangkaian pengujian, serta cara instalasi Postman melalui aplikasi desktop maupun website (dengan Postman Desktop Agent).
Pengujian API dan Validasi Kontrak
Dokumen ini membahas konsep dasar API Testing, yaitu pengujian pada layer API untuk memvalidasi fungsionalitas, keamanan, keandalan, dan kinerja. Selain itu, dijelaskan juga mengenai API Contract sebagai perjanjian hukum antara developer dan client yang mengatur penggunaan interface pemrograman aplikasi. Modul ini menugaskan pembuatan test scenario dan test case berdasarkan dokumentasi API Restful Booker.
Percobaan API dengan Swagger
Modul ini berisi tugas untuk membuat test scenario dan test case menggunakan dokumentasi API dari Petstore Sample API. Selain itu, peserta diarahkan untuk melakukan percobaan langsung melalui Swagger API Documentation, dengan alternatif uji coba pada demo API yang tersedia.
Dokumentasi API dengan Postman
Modul ini berisi studi kasus pembuatan dokumentasi API menggunakan Postman, dengan sumber API dari Restful Booker atau Petstore Swagger. Materi mencakup pengujian metode dasar seperti GET, POST, dan DELETE, melakukan assertion data, serta penggunaan environment variable. Selain itu, dijelaskan cara instalasi Postman di berbagai platform dan penggunaan Postman via web browser maupun desktop agent.
Konsep dan Praktik API Testing
Presentasi ini menjelaskan pengertian API, contoh implementasi, serta manfaatnya dalam pengembangan aplikasi. Materi mencakup jenis-jenis API (Private, Public, Partner, Composite), cara kerja API, hingga metode HTTP dan kode respon. Selain itu, dibahas juga berbagai tools untuk API Testing seperti Postman, Insomnia, SoapUI, Swagger, dan JMeter, dengan tugas praktik CRUD menggunakan API untuk melatih pemahaman peserta.