Tutorial Pengujian API: Apa itu Automasi Uji API? Cara Menguji

Sebelum pergi ke tutorial Pengujian API, mari kita fahami terlebih dahulu

Apa itu API?

API (Application Programming Interface) adalah antara muka pengkomputeran yang membolehkan komunikasi dan pertukaran data antara dua sistem perisian yang berasingan. Sistem perisian yang melaksanakan API merangkumi beberapa fungsi / subrutin yang dapat dilakukan oleh sistem perisian lain. API menentukan permintaan yang dapat dibuat, cara membuat permintaan, format data yang dapat digunakan, dll antara dua sistem perisian.

Apa itu Ujian API?

API TESTING adalah jenis pengujian perisian yang mengesahkan Antaramuka Pengaturcaraan Aplikasi (API). Tujuan Pengujian API adalah untuk memeriksa fungsi, kebolehpercayaan, prestasi, dan keselamatan antara muka pengaturcaraan. Dalam Pengujian API, bukannya menggunakan input (keyboard) dan output pengguna standar, Anda menggunakan perisian untuk mengirim panggilan ke API, mendapatkan output, dan mencatat respons sistem. Ujian API sangat berbeza dengan Ujian GUI dan tidak akan tertumpu pada rupa dan nuansa aplikasi. Terutama tertumpu pada lapisan logik perniagaan seni bina perisian.

Ujian automasi API memerlukan aplikasi yang dapat berinteraksi melalui API. Untuk menguji API, anda perlu

  • Gunakan Alat Uji untuk mendorong API
  • Tulis kod anda sendiri untuk menguji API

Dalam tutorial pengujian API ini, anda akan belajar lebih banyak mengenai-

  • Penyediaan persekitaran Ujian API
  • Jenis Keluaran API
  • Kes Ujian untuk Ujian API
  • Pendekatan Pengujian API
  • Perbezaan antara ujian API dan ujian Unit
  • Cara Menguji API
  • Amalan Terbaik Pengujian API
  • Jenis Bug yang dikesan oleh Ujian API
  • Cara melakukan Automasi Ujian API
  • Cabaran Pengujian API

Penyediaan persekitaran Ujian API

  • Pengujian API berbeza daripada jenis pengujian perisian lain kerana GUI tidak tersedia, namun anda diminta untuk menyiapkan persekitaran awal yang meminta API dengan set parameter yang diperlukan dan akhirnya memeriksa hasil ujian.
  • Oleh itu, menyiapkan persekitaran ujian untuk ujian automasi API nampaknya agak rumit.
  • Pangkalan data dan pelayan harus dikonfigurasi sesuai dengan keperluan aplikasi.
  • Setelah pemasangan selesai, Fungsi API harus dipanggil untuk memeriksa apakah API itu berfungsi.

Jenis Keluaran API

Output API mungkin

  1. Segala jenis data
  2. Status (katakan Lulus atau Gagal)
  3. Panggil fungsi API yang lain.

Mari kita lihat contoh setiap Jenis di atas dalam tutorial pengujian api ini

Sebarang Jenis Data

Contoh: Terdapat fungsi API yang harus menambahkan dua nombor bulat.

Tambah panjang (int a, int b)

Nombor harus diberikan sebagai parameter input. Hasilnya mestilah penjumlahan dari dua nombor bulat. Hasil ini perlu disahkan dengan hasil yang diharapkan.

Panggilan perlu dilakukan seperti

tambah (1234, 5656)

Pengecualian harus ditangani jika bilangannya melebihi had bilangan bulat.

Status (katakan Lulus atau Gagal)

Pertimbangkan fungsi API di bawah -

  1. Kunci ()
  2. Buka kunci ()
  3. Padamkan ()

Mereka mengembalikan nilai seperti True (sekiranya berjaya) atau false (Sekiranya berlaku kesalahan) sebagai output.

Kes Ujian yang lebih tepat adalah, dapat memanggil fungsi dalam skrip mana pun dan kemudian memeriksa perubahan baik dalam pangkalan data atau Aplikasi GUI.

Panggilan API / Acara lain

Dalam kes ini, kita memanggil salah satu fungsi API yang seterusnya akan memanggil fungsi lain.

Sebagai contoh - Fungsi API pertama dapat digunakan untuk menghapus catatan yang ditentukan dalam jadual dan fungsi ini, pada gilirannya, memanggil fungsi lain untuk MENYATAKAN pangkalan data.

Kes Ujian untuk Ujian API:

Kes ujian Ujian API berdasarkan

  • Nilai kembali berdasarkan keadaan input: agak mudah diuji, kerana input dapat ditentukan dan hasilnya dapat disahkan
  • Tidak mengembalikan apa-apa: Apabila tidak ada nilai kembali, tingkah laku API pada sistem yang akan diperiksa
  • Mencetuskan beberapa API / peristiwa / gangguan lain: Jika output dari API mencetuskan beberapa peristiwa atau mengganggu, maka peristiwa dan pendengar yang mengganggu harus dilacak
  • Kemas kini struktur data: Mengemas kini struktur data akan mempunyai beberapa hasil atau kesan pada sistem, dan itu harus disahkan
  • Ubah sumber tertentu: Sekiranya panggilan API mengubah beberapa sumber maka ia harus disahkan dengan mengakses sumber masing-masing

Pendekatan Ujian API

Pendekatan Pengujian API adalah strategi yang telah ditentukan atau kaedah yang akan dilakukan oleh pasukan QA untuk melakukan pengujian API setelah build siap. Ujian ini tidak termasuk kod sumber. Pendekatan pengujian API membantu memahami fungsi, teknik pengujian, parameter input dan pelaksanaan kes ujian dengan lebih baik.

Perkara berikut membantu pengguna melakukan pendekatan Uji API:

  1. Memahami fungsi program API dan menentukan dengan jelas skop program
  2. Terapkan teknik ujian seperti kelas kesetaraan, analisis nilai sempadan, dan kesilapan meneka dan menulis kes ujian untuk API
  3. Parameter Input untuk API perlu dirancang dan ditentukan dengan tepat
  4. Laksanakan kes ujian dan bandingkan hasil yang diharapkan dan sebenar.

Perbezaan antara ujian API dan ujian Unit

Ujian unit Ujian API
  • Pemaju melaksanakannya
  • Penguji melaksanakannya
  • Fungsi berasingan diuji
  • Fungsi hujung ke hujung diuji
  • Pembangun boleh mengakses kod sumber
  • Penguji tidak dapat mengakses kod sumber
  • UI UI juga terlibat
  • Hanya fungsi API yang diuji
  • Hanya fungsi asas yang diuji
  • Semua masalah berfungsi diuji
  • Skop terhad
  • Skopnya lebih luas
  • Biasanya berlari sebelum daftar masuk
  • Berlari selepas binaan dibuat

Cara Menguji API

Ujian automasi API harus meliputi sekurang-kurangnya kaedah pengujian berikut daripada proses SDLC biasa

  • Ujian penemuan: Kumpulan ujian harus melaksanakan set panggilan yang didokumentasikan dalam API secara manual seperti mengesahkan bahawa sumber tertentu yang didedahkan oleh API dapat disenaraikan, dibuat dan dihapus sesuai
  • Ujian kebolehgunaan: Ujian ini mengesahkan sama ada API berfungsi dan mesra pengguna. Dan adakah API berintegrasi dengan platform lain juga
  • Ujian keselamatan: Ujian ini merangkumi jenis pengesahan yang diperlukan dan sama ada data sensitif disulitkan melalui HTTP atau kedua-duanya
  • Pengujian automatik: Pengujian API harus berakhir dengan penciptaan sekumpulan skrip atau alat yang dapat digunakan untuk menjalankan API secara berkala
  • Dokumentasi: Pasukan ujian harus memastikan bahawa dokumentasi mencukupi dan memberikan maklumat yang cukup untuk berinteraksi dengan API. Dokumentasi harus menjadi sebahagian daripada penyampaian akhir

Amalan Terbaik Pengujian API:

  • Kes Ujian API harus dikelompokkan mengikut kategori ujian
  • Di atas setiap ujian, anda harus menyertakan deklarasi API yang dipanggil.
  • Pemilihan parameter harus dinyatakan secara eksplisit dalam kes ujian itu sendiri
  • Utamakan panggilan fungsi API supaya mudah diuji oleh penguji
  • Setiap kes ujian harus serba lengkap dan bebas dari kebergantungan mungkin
  • Elakkan "ujian rantai" dalam perkembangan anda
  • Perhatian khusus mesti diambil semasa mengendalikan fungsi panggilan satu kali seperti - Delete, CloseWindow, dll ...
  • Penjujukan panggilan harus dilakukan dan dirancang dengan baik
  • Untuk memastikan liputan ujian lengkap, buat kes ujian API untuk semua kemungkinan kombinasi input API.

Jenis Bug yang dikesan oleh pengujian API

  • Gagal menangani keadaan kesalahan dengan baik
  • Bendera yang tidak digunakan
  • Fungsi tiada atau pendua
  • Isu Kebolehpercayaan. Kesukaran untuk menyambung dan mendapat respons dari API.
  • Isu keselamatan
  • Isu berbilang utas
  • Isu Prestasi. Masa tindak balas API sangat tinggi.
  • Kesalahan / amaran yang tidak betul kepada pemanggil
  • Pengendalian nilai argumen yang betul tidak betul
  • Data Respons tidak disusun dengan betul (JSON atau XML)

Cara melakukan Automasi Ujian API

Tutorial berikut memberikan panduan terperinci untuk mengautomasikan ujian API.

Cara menguji API dengan REST Assured

Cara menguji API dengan Postman

Cara menguji API dengan UFT

Selain itu ada alat lain untuk pengujian API. Lihat di sini

Cabaran Pengujian API

Cabaran ujian API merangkumi:

  • Cabaran utama dalam pengujian API Web adalah Parameter Combination, Parameter Selection, dan Call Sequencing
  • Tidak ada GUI yang tersedia untuk menguji aplikasi yang menyukarkan memberikan nilai input
  • Pengesahan dan Pengesahan output dalam sistem yang berbeza agak sukar bagi penguji
  • Pemilihan dan pengkategorian parameter perlu diketahui oleh penguji
  • Fungsi pengendalian pengecualian perlu diuji
  • Pengetahuan pengekodan diperlukan untuk penguji

Kesimpulan:

API terdiri daripada sekumpulan kelas / fungsi / prosedur yang mewakili lapisan logik perniagaan. Sekiranya API tidak diuji dengan baik, ini dapat menyebabkan masalah tidak hanya pada aplikasi API tetapi juga pada aplikasi panggilan. Ini adalah ujian yang sangat diperlukan dalam kejuruteraan perisian.

Artikel menarik...