Saat mengembangkan webhook, sebaiknya Anda mengujinya dengan webhook Payload pesan. Daripada membuat pengujian secara manual, Anda dapat menggunakan Framework pengujian Message untuk menguji webhook Anda dengan berbagai jenis payload JSON yang dapat diterima webhook Anda dalam produksi.
Untuk memulai, yang Anda butuhkan hanyalah URL untuk instance webhook Anda yang sedang berjalan. Kerangka kerja pengujian mudah diinstal, dan Anda dapat menguji webhook dengan satu perintah.
Memulai
Menginstal framework
Cara termudah untuk menginstal framework adalah menggunakan pengelola paket NPM.
Framework dipublikasikan di registry paket NPM, sehingga Anda dapat menginstalnya
dengan npm
:
npm install -g bm-test-framework
Menjalankan pengujian
Setelah paket terinstal, Anda dapat menyediakan URL webhook sebagai lingkungan variabel dan jalankan semua pengujian dengan perintah berikut:
BMTF_ENDPOINT_URL=<Your webhook URL> bm-test-framework
Hasil framework pengujian akan terlihat seperti ini:
Sending payloads to <Your webhook URL>
✔ authentication-request.json should return 200
✔ event-receive.json should return 200
✔ image-message.json should return 200 (862ms)
✔ read-receipt.json should return 200
✔ suggestion-message.json should return 200
✔ text-message.json should return 200 (134ms)
✔ text-with-dialogflow-response.json should return 200 (128ms)
✔ user-receipt.json should return 200
Dalam contoh pengujian ini, semua kasus pengujian berhasil.
Jika webhook Anda gagal di salah satu kasus pengujian, artinya webhook Anda tidak
merespons payload JSON kasus pengujian tersebut dengan 200 OK
. Dalam hal ini, pengujian
framework mencetak informasi error untuk membantu Anda melakukan debug. Lihat
framework pengujian README
untuk mempelajari lebih lanjut
kasus pengujian tertentu.
Menggunakan framework di project NodeJS Anda
Untuk menggunakan framework dari dalam kode Anda sendiri dalam project NodeJS, atau dari dalam rangkaian pengujian Mocha, pertama-tama instal paket sebagai dependensi:
npm install --save-dev bm-test-framework
Setelah diinstal, Anda dapat membuat objek BmTestFramework
untuk mengelola pengujian:
const BmTestFramework = require('bm-test-framework');
const bmTestFramework = new BmTestFramework({endpointURL: <Your webhook URL>});
Array anggota payloads
berisi semua kasus pengujian. Anda dapat menggunakan
sendPayload
untuk menjalankan pengujian tertentu. Misalnya, kode berikut
menjalankan pengujian pertama dalam framework:
bmTestFramework.sendPayload(bmTestFramework.payloads[0])
Mengonfigurasi pengujian
Selain variabel lingkungan BMTF_ENDPOINT_URL
yang diperlukan, Anda dapat
tetapkan juga variabel lingkungan opsional untuk menyesuaikan perilaku pengujian:
Variabel lingkungan | Nama kolom Config | Jenis | Deskripsi |
---|---|---|---|
BMTF_RANDOM_UUID | randomUuid | boolean | Jika benar, menetapkan ID percakapan ke UUID acak dengan format yang valid. Jika false, tetapkan semua ID percakapan ke "CONVERSATION-ID". |
BMTF_TIMEOUT | timeout | Angka atau string waktu berformat | Menetapkan waktu tunggu dalam milidetik untuk setiap kasus pengujian. Waktu tunggu default adalah 2.000 md untuk setiap kasus pengujian. Lihat referensi Mocha API untuk mengetahui spesifikasi pemformatan dan jenis yang mendetail. |
Misalnya, kode berikut menjalankan framework pengujian dari command line dengan opsi UUID acak diaktifkan dan dengan waktu tunggu 1.000 md:
BMTF_ENDPOINT_URL=<Your webhook URL> BMTF_TIMEOUT=1000 BMTF_RANDOM_UUID=true bm-test-framework
Untuk menyesuaikan perilaku pengujian di project NodeJS, Anda juga dapat meneruskan
variabel yang sama ke dalam objek config
saat Anda membuat BmTestFramework
:
const bmTestFramework = new BmTestFramework({endpointURL: <Your webhook URL>, randomUuid: true, timeout: 1000});