Paket Pengujian Google Home

Cloud-to-cloud    Local Home SDK

Google Home Test Suite adalah aplikasi web yang memungkinkan Anda melakukan pengujian mandiri untuk Action smart home. Test Suite secara otomatis membuat dan menjalankan kasus pengujian berdasarkan perangkat dan fitur yang terkait dengan akun Anda. Setelah menyelesaikan pengujian, Anda dapat melihat hasil pengujian.

Untuk menggunakan Test Suite dan mengirimkan hasil pengujian ke Google untuk mendapatkan sertifikasi, lihat halaman Menguji dan membagikan Action smart home untuk mengetahui informasi selengkapnya. Versi Test Suite ini khusus untuk pengembangan dan penjaminan kualitas.

Pengujian yang dijalankan oleh Test Suite mencakup, tetapi tidak terbatas pada, hal berikut:

  • Memeriksa apakah Laporkan Status dan Sinkronisasi Permintaan diterapkan untuk perangkat dan fitur Anda.

  • Memverifikasi bahwa intent QUERY diterapkan untuk perangkat Anda dan hasilnya cocok dengan hasil Laporkan Status.

Anda dapat meluncurkan alat Test Suite dengan mengklik tombol di bawah:

Luncurkan Test Suite

Menguji Action Anda secara mandiri

Bagian berikut menjelaskan cara menjalankan Test Suite di perangkat dan project Action smart home Anda. Test Suite mengharuskan Anda untuk login agar dapat memeriksa perangkat di Google Home Graph dan mengirim perintah langsung ke Google Assistant.

Untuk menguji Action Anda secara mandiri, ikuti langkah-langkah berikut:

  1. Di browser web, buka the Test Suite.
  2. Login ke Google menggunakan tombol di pojok kanan atas.

  3. Konfigurasi Detail Project:

    1. Di kolom Project ID, masukkan ID project untuk Action smart home Anda.
    2. Klik Next.
  4. Konfigurasi Test Settings:

    1. Jika Anda mensertifikasi integrasi Cloud-to-cloud, biarkan nilai default Report State/Request Sync Timeout tidak berubah. Namun, untuk pengujian, Anda dapat mengubah nilai waktu tunggu jika agen Anda memerlukan lebih banyak waktu untuk melaporkan status ke Home Graph.
    2. Jika Anda mensertifikasi integrasi Cloud-to-cloud, pastikan opsi Test Request Sync diaktifkan—selama pengujian, Anda akan diminta untuk menambahkan, memperbarui, atau menghapus perangkat dan memeriksa apakah daftar perangkat telah berubah di Home Graph. Tindakan perubahan terjadi melalui integrasi yang Anda uji. Integrasi yang sedang diuji harus selalu memiliki setidaknya satu perangkat yang terlampir ke pengguna agen.

    3. Jika Anda menggunakan fitur Scene, pilih Test Scene trait.

    4. Jika Anda menjalankan test suite untuk perangkat Local Home, pilih Supports Local Home SDK.

      1. Pilih Local Fulfillment atau Seamless Setup.
      2. Klik Supports Local Query jika perangkat dapat menangani intent QUERY secara lokal.
  5. Lakukan Test Run dan lihat hasilnya:

    1. Klik Next untuk mulai menjalankan pengujian. Antarmuka akan menampilkan perangkat dan fitur yang sedang diuji.
  6. Lihat halaman Results &Submission:

    1. Setelah pengujian selesai, klik Next untuk melihat hasilnya.

Hasil pengujian mencakup jumlah pengujian yang lulus dan gagal, serta skor akhir yang menunjukkan persentase kelulusan.

Pengujian validasi penautan akun

Penautan akun memainkan peran penting dalam ekosistem smart home Google. Pengujian validasi penautan akun di Test Suite memeriksa layanan OAuth Anda untuk mengetahui potensi masalah.

Pengujian validasi penautan akun berisi pengujian untuk memvalidasi token akses dan token refresh:

Pengujian validasi token akses

Token akses yang ditampilkan dari endpoint pertukaran token Anda diuji untuk memastikan token tersebut memiliki format yang valid dan ditampilkan dengan token refresh yang valid.

Item Pengujian Penjelasan
Memeriksa apakah token akses berformat JWT Penautan Akun Google tidak merekomendasikan token akses berformat JWT. Jika format JWT ditemukan, peringatan berikut akan ditampilkan: The access token seems to be JWT, this is not good. Because it unnecessarily exposes information about partner implementation and we recommend opaque symmetric encrypted access token.
Memeriksa apakah token akses yang dapat habis masa berlakunya memiliki token refresh. Token refresh harus diberikan saat token akses dapat habis masa berlakunya. Pengujian ini akan gagal jika tidak ada token refresh yang ditemukan.

Pengujian validasi token refresh

Token refresh diuji untuk memastikan endpoint pertukaran token Anda menukarkannya dengan benar untuk token akses baru.

Item Pengujian Penjelasan
Token refresh dengan token refresh yang tidak valid, memeriksa respons partner. Server Anda harus menampilkan error HTTP 400 Bad Request dengan {"error": "invalid_grant"} ke permintaan token refresh yang tidak valid. Jika respons tidak cocok dengan "kode atau pesan error", kasus pengujian ini akan gagal. Buka exchange refresh tokens for access tokens untuk mengetahui informasi selengkapnya.
Menguji apakah token akses telah diperbarui setelah token di-refresh. Token akses baru harus ditampilkan sebagai respons terhadap permintaan token refresh permintaan. Jika server Anda memberikan token akses yang sama, kasus pengujian akan gagal.
Memeriksa apakah token akses yang belum habis masa berlakunya masih valid. Waktu habis masa berlaku token akses akan ditampilkan.
Memeriksa apakah token refresh telah dirotasi selama proses refresh. Kami memeriksa apakah token refresh diubah setelah permintaan token refresh. Jika token refresh berubah, server Anda hanya boleh membatalkan token refresh lama setelah token refresh baru digunakan, untuk mencegah kondisi race yang dapat merusak penautan akun pengguna. Pengujian akan gagal jika Anda membatalkan token refresh lama sebelum token baru digunakan.

Pesan error

Tabel berikut mencantumkan beberapa pesan error umum yang mungkin Anda temui dan cara yang disarankan untuk mengatasinya.

Pesan Error Cara Mengatasi
HomeGraph API belum pernah digunakan dalam project <_id_> sebelumnya atau dinonaktifkan Pastikan Anda telah mengaktifkan HomeGraph API.
Entitas yang Diminta tidak ditemukan Pastikan agentUserId Anda valid dan ditautkan ke layanan Anda.

Pastikan Anda memiliki izin resourcemanager.projects.get di project ${your project id} dan telah memberikan semua izin di layar izin.

Error getting module data: getModuleData error: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Ikuti petunjuk di Memecahkan masalah izin IAM untuk memastikan akun Anda memiliki resourcemanager.projects.get izin untuk project.
  2. Buka halaman Aplikasi yang dapat mengakses akun Anda untuk memeriksa izin berikut untuk "Test suite for smart home":
    • Info akun dasar
      1. Melihat alamat email Akun Google utama Anda
      2. Melihat info pribadi Anda, termasuk info pribadi Anda yang tersedia untuk publik
    • Akses tambahan
      1. Menggunakan Assistant: akses luas ke Akun Google Anda
      2. Memeriksa dan mengontrol perangkat smart home di Home Graph Anda
    Jika Anda mendapatkan error izin, hapus akses terlebih dahulu dan berikan semua izin di layar izin saat Anda login lagi.

Mengirimkan hasil pengujian

Hasil Test Suite Anda harus lulus 100% pengujian sebelum dikirimkan untuk mendapatkan sertifikasi. Jika Anda memiliki fitur yang memerlukan pengujian manual, Anda tetap harus menjalankan alat Test Suite dan melampirkan hasilnya meskipun belum lulus 100%.

Untuk mengirimkan hasil pengujian dan mensertifikasi Cloud-to-cloud integrasi, ikuti langkah-langkah berikut:

  1. Setelah menerima hasil pengujian dan Anda siap mensertifikasi integrasi Cloud-to-cloud, klik Submit di alat Test Suite.
  2. Buka Google Home Developer Console > Cloud-to-cloud > Certify.
  3. Pilih integrasi yang ingin Anda sertifikasi.
  4. Di bagian Documentation, masukkan ID hasil Test Suite Anda.
  5. Isi semua kolom yang wajib diisi, lalu klik Submit.