Memulai Pengujian API - Yang Harus Anda Ketahui

Jika Anda memulai pengujian API dan otomatisasi pengujian API, hal apa saja yang harus Anda ketahui? Jika Anda telah melakukan otomatisasi UI (Selenium / Cypress) untuk sementara waktu, Anda akan menemukan bahwa pengujian API agak menakutkan untuk memulai.

Pertama-tama, tidak ada antarmuka untuk berinteraksi. Berbeda dengan pengujian UI, bahwa Anda benar-benar dapat memvisualisasikan aktivitas dan berinteraksi dengan antarmuka, pengujian API adalah tentang permintaan dan respons HTTP biasa.

Misalnya, pertimbangkan fungsionalitas login sederhana:


Saat menguji dari UI, yang perlu Anda lakukan adalah menavigasi ke halaman login, masukkan nama pengguna dan kata sandi dan klik tombol kirim. Anda berinteraksi dengan formulir di halaman.

Sebagai penguji, Anda mungkin tidak menyadari apa yang sebenarnya terjadi di balik layar saat Anda mengeklik tombol kirim.


Saat Anda ingin menguji fungsionalitas login yang sama pada lapisan API, dari mana Anda memulai?

Anda perlu mengetahui url alamat dari titik akhir yang perlu Anda kirimkan Permintaan POST untuk.

Anda perlu tahu dalam format apa Anda perlu mengirim file muatan . Apakah JSON, Multipart, form-data?

Anda juga perlu tahu apa header Anda harus memberikan permintaan Anda.


Setelah permintaan dikirim, lalu apa?

Anda perlu tahu apa kode status tanggapan diharapkan bersama dengan tubuh respons . Tidak hanya itu, tetapi bagaimana mengekstrak berbagai informasi dari respon tersebut.



Pengujian API - Yang Harus Anda Ketahui

Saya telah membuat daftar item yang harus diketahui oleh setiap penguji yang terlibat dengan pengujian API dan otomatisasi pengujian API.

Daftar ini sama sekali tidak lengkap, tetapi minimal yang diperlukan untuk mengetahui jika Anda ingin mempelajari pengujian API:


  • Mampu membuat proyek yang dapat dijalankan dan dapat dieksekusi dengan semua pustaka yang diperlukan untuk mendukung pengujian API
  • Memahami dan berinteraksi dengan titik akhir melalui tukang pos
  • Buat koleksi dan minta templat di tukang pos
  • Ketahui HTTP dalam konteks lengkap
  • Permintaan [struktur permintaan, header, metode, isi]
  • Metode permintaan yang berbeda, GET, POST, PUT, PATCH, DELETE
  • Mengirimkan data Formulir melalui JSON, Multipart, URL yang dikodekan, Parameter Kueri
  • Respons [kode status respons, header respons, badan respons]
  • Menggunakan pustaka yang sesuai untuk mengurai isi respons dan mengekstrak nilai
  • Rangkaian Permintaan / Respons, mengekstraksi isi respons dan menyajikannya sebagai permintaan ke panggilan berikutnya
  • Mekanisme otentikasi, OAuth2, OpenID, JWT, Access Token
  • REST, JSON, Manajemen sesi, Otorisasi

Bacaan lebih lanjut: