Menguji fungsi Cloud Run sebelum deployment

Panduan ini menunjukkan cara menguji fungsi Cloud Run di Google Cloud Console sebelum men-deploy-nya. Fitur ini tersedia untuk fungsi Node.js dan Python.

Menyiapkan fungsi untuk pengujian

Untuk mempersiapkan fungsi pengujian:

  1. Buka halaman Ringkasan Fungsi di Google Cloud Console:

    Buka halaman Ringkasan fungsi Cloud Run

    Pastikan project tempat Anda mengaktifkan fungsi Cloud Run dipilih.

  2. Klik Create Function untuk membuat fungsi Node.js atau Python baru, atau pilih fungsi Node.js atau Python yang ada dan klik Edit untuk mengeditnya.

  3. Klik Next untuk melanjutkan ke halaman pengeditan kode:

    Screenshot yang menampilkan panel pengujian pra-deploy fungsi

  4. Klik Test Function untuk memulai proses pengujian.

  5. Saat diminta, klik Start testing untuk mengizinkan penggunaan Terminal Cloud Shell.

Menjalankan pengujian

Setelah Anda menyelesaikan langkah-langkah sebelumnya, panel peristiwa pemicu akan terbuka di sebelah kanan, yang mengonfirmasi bahwa fungsi tersebut siap diuji. Klik Run test.

Screenshot yang menampilkan panel pengujian pra-deploy fungsi

Tahap proses pengujian ini mencakup komponen berikut:

  • Panel peristiwa pemicu. Panel peristiwa pemicu akan terisi otomatis dengan payload yang cocok dengan pemicu peristiwa yang Anda tentukan pada halaman konfigurasi. Ini adalah input ke fungsi Anda.
  • Jendela output Cloud Shell. Jendela output Cloud Shell menampilkan kode status HTTP dan respons apa pun yang ditampilkan ke pemanggil.
  • Jalankan pengujian akan menjalankan pengujian.

Anda dapat mengamati output dari pengujian di jendela Cloud Shell:

Screenshot yang menampilkan jendela output Cloud Shell

Terminal Cloud Shell

Anda dapat melihat output logging berdasarkan fungsi di terminal Cloud Shell di bagian bawah layar. Misalnya, Anda akan melihat output pengemasan kode sumber saat membuka panel pengujian. Saat menjalankan pengujian, Anda akan melihat perubahan kode sumber dan output level eksekusi, termasuk console.log dan error.

Jika pengujian Anda gagal, terminal Cloud Shell akan menampilkan pesan error untuk membantu Anda menentukan penyebab sebenarnya, misalnya:

[11:31:47 AM] - Provided module can't be loaded.
Is there a syntax error in your code?
Detailed stack trace: /workspace/index.js:11
    : 'World';
    ^

SyntaxError: Unexpected token ':'
    at Object.compileFunction (node:vm:360:18)
    at wrapSafe (node:internal/modules/cjs/loader:1048:15)
    at Module._compile (node:internal/modules/cjs/loader:1083:27)
    at Module._extensions..js (node:internal/modules/cjs/loader:1173:10)
    at Module.load (node:internal/modules/cjs/loader:997:32)
    at Module._load (node:internal/modules/cjs/loader:838:12)
    at Module.require (node:internal/modules/cjs/loader:1021:19)
    at require (node:internal/modules/cjs/helpers:103:18)
    at getUserFunction (/workspace/node_modules/@google-cloud/functions-framework/build/src/loader.js:98:30)
    at async main (/workspace/node_modules/@google-cloud/functions-framework/build/src/main.js:35:32)

[11:31:47 AM] - Could not load the function, shutting down.

Deploy

Setelah pengujian selesai, Anda dapat men-deploy fungsi seperti biasa dengan mengklik Deploy.