Paket Pengujian Google Home

Cloud-to-cloud    Local Home SDK

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

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

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

  • Memeriksa apakah Status Pelaporan dan Minta Sinkronisasi diterapkan untuk perangkat dan karakteristik Anda.

  • Memverifikasi bahwa intent QUERY diimplementasikan untuk perangkat Anda dan hasilnya cocok dengan hasil Report State.

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

Mulai Test Suite

Menguji sendiri Action Anda

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

Untuk menguji sendiri Action Anda, ikuti langkah-langkah berikut:

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

  3. Konfigurasi Project Details:

    1. Di kolom Project ID, masukkan ID project untuk Action smart home Anda.
    2. Klik Berikutnya.
  4. Konfigurasi Setelan Pengujian:

    1. Jika Anda mensertifikasi integrasi Cloud-to-cloud, biarkan nilai default Waktu Tunggu Sinkronisasi/Status Pelaporan Permintaan 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 Uji Sinkronisasi Permintaan diaktifkan. Selama pengujian, Anda akan diminta untuk menambahkan, memperbarui, atau menghapus perangkat dan memeriksa apakah daftar perangkat telah berubah di Home Graph. Tindakan perubahan dilakukan melalui integrasi yang Anda uji. Integrasi yang sedang diuji harus selalu memiliki setidaknya satu perangkat yang terhubung ke pengguna agen.

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

    4. Jika Anda menjalankan rangkaian pengujian untuk perangkat Local Home, pilih Mendukung Local Home SDK.

      1. Pilih Pemenuhan Lokal atau Penyiapan yang Lancar.
      2. Klik Mendukung Kueri Lokal jika perangkat dapat menangani intent QUERY secara lokal.
  5. Lakukan Test Run dan lihat hasilnya:

    1. Klik Berikutnya untuk mulai menjalankan pengujian. Antarmuka menampilkan perangkat dan karakteristik yang sedang diuji.
  6. Melihat halaman Hasil & Pengiriman:

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

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

Uji validasi penautan akun

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

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

Uji 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
Periksa apakah token akses berformat JWT Penautan Akun Google tidak merekomendasikan token akses format 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.

Uji validasi token refresh

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

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 menukar token refresh dengan token akses untuk mengetahui informasi selengkapnya.
Uji apakah token akses telah diperbarui setelah refresh token. Token akses baru harus ditampilkan sebagai respons terhadap permintaan token refresh. Jika server Anda memberikan token akses yang sama, kasus pengujian akan gagal.
Periksa apakah token akses yang belum habis masa berlakunya masih valid. Waktu habis masa berlaku token akses akan ditampilkan.
Periksa apakah token refresh telah dirotasi selama pembaruan. Kami memeriksa apakah token refresh diubah setelah permintaan token refresh. Jika token refresh berubah, server Anda hanya boleh membatalkan validasi token refresh lama setelah token refresh baru digunakan, untuk mencegah kondisi persaingan yang dapat merusak penautan akun pengguna. Pengujian akan gagal jika Anda membatalkan validasi 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 API tersebut 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 saat mendapatkan data modul: error getModuleData: Respons kegagalan HTTP untuk https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Ikuti petunjuk di Memecahkan masalah izin IAM untuk memastikan akun Anda memiliki izin resourcemanager.projects.get 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 yang Anda atur agar bisa dilihat publik
    • Akses tambahan
      1. Menggunakan Assistant Anda: 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 mengajukan sertifikasi. Jika Anda memiliki sifat yang memerlukan pengujian manual, Anda tetap harus menjalankan alat Test Suite dan melampirkan hasilnya meskipun belum lulus 100%.

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

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