</>SMSUnlock
// QA & pengujian

Cara menguji alur verifikasi SMS Anda sendiri dari ujung ke ujung

Sebelum setiap rilis Anda butuh bukti bahwa alur pendaftaran dan OTP Anda masih bekerja โ€” bahwa kode terkirim, sampai, terverifikasi, dan ditolak dengan benar. Panduan ini menunjukkan cara menguji alur verifikasi Anda sendiri memakai kredensial uji penyedia, kode ajaib, sandbox, dan pemeriksaan otomatis di CI, tanpa menyampahi ponsel nyata atau menghabiskan biaya untuk SMS langsung.

Apa yang sebenarnya Anda uji

Alur verifikasi punya beberapa bagian bergerak, dan masing-masing bisa rusak secara terpisah. Pengujian yang baik mencakup jalur bahagia dan jalur gagal, karena penanganan kegagalan adalah tempat kepercayaan pengguna dimenangkan atau hilang.

  • Kirim: kode dibuat dan dikirim untuk nomor yang valid.
  • Terima dan verifikasi: kode yang benar diterima dan sesi ditingkatkan.
  • Tolak: kode salah, kedaluwarsa, dan dipakai ulang ditolak.
  • Batas: pembatasan laju dan jeda kirim ulang berperilaku sesuai rancangan.
  • Fallback: peningkatan kanal dan keadaan kesalahan dirender dengan benar.

Gunakan kredensial uji dan kode ajaib penyedia

Setiap penyedia besar memberi Anda cara menjalankan alur tanpa mengirim pesan nyata. Twilio punya kredensial uji dan nomor telepon ajaib yang menyimulasikan keberhasilan dan respons kegagalan tertentu; Vonage, Sinch, dan MessageBird menawarkan mode sandbox dan nomor uji. Gunakan ini dalam jalan lokal dan CI agar rangkaian uji Anda tak pernah menyentuh operator nyata.

  • Twilio: kredensial uji + nomor ajaib yang memaksa hasil berhasil/tidak valid/gagal.
  • Lainnya: kunci API sandbox dan nomor uji yang ditentukan.
  • Simpan kredensial uji dan langsung dalam konfigurasi lingkungan terpisah dengan nama jelas.
!

Jangan pernah menjalankan uji terhadap kredensial langsung di CI โ€” satu bug perulangan bisa mengirim ribuan pesan berbayar dan membuat pengirim Anda ditandai.

Sediakan nomor uji yang Anda kendalikan

Untuk uji ujung ke ujung yang benar-benar mengirim pesan, sediakan nomor terprogram yang Anda miliki sebagai penerima uji, lalu baca kembali kode yang terkirim melalui API pesan penyedia dan umpankan ke langkah verifikasi Anda. Karena Anda memiliki nomor dan aplikasi, ini adalah uji lingkaran tertutup yang bersih atas sistem Anda sendiri.

  1. 1

    Sediakan nomor uji

    Buat nomor terprogram di akun penyedia Anda yang didedikasikan untuk lingkungan pengujian.

  2. 2

    Picu pengiriman Anda

    Panggil endpoint pendaftaran/verifikasi Anda sendiri agar aplikasi Anda mengirim kode nyata ke nomor uji.

  3. 3

    Baca kode via API

    Ambil pesan masuk melalui API penyedia dan ekstrak kode secara terprogram.

  4. 4

    Selesaikan dan tegaskan

    Kirim kode ke endpoint verifikasi Anda dan tegaskan sesi ditingkatkan; lalu lepas nomor.

Otomatiskan di CI

Sambungkan hal di atas ke pipeline Anda agar verifikasi diperiksa pada setiap build. Gunakan jalur tiruan/sandbox untuk uji unit dan integrasi cepat yang berjalan pada setiap commit, dan sisihkan uji lingkaran tertutup nyata (dengan nomor milik sendiri) untuk tahap malam atau prarilis guna mengendalikan biaya.

  • Jalur cepat: tiru penyedia atau pakai kredensial uji pada setiap commit.
  • Jalur lambat: uji kirim nyata ke nomor milik sendiri secara malam atau sebelum rilis.
  • Tegaskan juga jalur gagal: kode kedaluwarsa, kode salah, dan respons batas laju.
  • Beri peringatan atas regresi latensi pengiriman, bukan hanya lulus/gagal.

Uji keterkiriman, bukan hanya logika

Uji logika membuktikan kode Anda benar; ia tidak membuktikan pesan sampai di dunia nyata. Secara berkala kirim lalu lintas uji nyata ke nomor di operator dan negara utama Anda dan ukur tingkat pengiriman serta latensi nyata, sehingga Anda menangkap regresi perutean atau penyaringan sebelum pengguna Anda.

!

Masalah pengiriman sering muncul per negara atau per operator. Putar pemantauan Anda melintasi bauran tujuan nyata Anda โ€” panduan keterkiriman menjelaskan alasannya.

Pertanyaan yang sering diajukan

Bagaimana menguji OTP tanpa mengirim SMS nyata?+

Gunakan kredensial uji dan nomor ajaib penyedia Anda, yang menyimulasikan respons berhasil dan gagal tanpa menyentuh operator. Sisihkan pengiriman pesan nyata untuk uji malam atau prarilis kecil terhadap nomor yang Anda miliki, guna menjaga biaya dan reputasi pengirim tetap terkendali.

Bagaimana saya membaca kode OTP dalam uji otomatis?+

Sediakan nomor terprogram yang Anda miliki sebagai penerima uji, lalu ambil pesan masuk melalui API pesan penyedia dan ekstrak kode dalam uji Anda. Karena Anda memiliki nomor dan aplikasi, ini uji lingkaran tertutup yang bersih atas alur Anda sendiri.

Apa yang harus dicakup uji verifikasi saya?+

Baik jalur bahagia (kode terkirim, sampai, terverifikasi) maupun jalur gagal (kode salah, kode kedaluwarsa, kode dipakai ulang, batas laju, dan fallback kanal). Penanganan kegagalan adalah tempat sebagian besar bug nyata dan risiko pengambilalihan akun bersembunyi.

Haruskah verifikasi berjalan di setiap build CI?+

Jalankan uji tiruan/sandbox cepat pada setiap commit, dan jadwalkan uji pengiriman nyata yang lebih lambat secara malam atau sebelum rilis. Itu memberi Anda cakupan logika konstan tanpa membayar SMS pada setiap push.

EdgeGigs

Ingin menguji alur pendaftaran dan OTP Anda dari ujung ke ujung?

Rekrut pengembang bermental QA di EdgeGigs untuk membangun pengujian otomatis atas alur verifikasi Anda sendiri โ€” termasuk nomor uji, sandbox, dan CI.

Temukan pengembang di EdgeGigs โ†’