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:
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:
- Di browser web, buka the Test Suite.
Login ke Google menggunakan tombol di pojok kanan atas.
Konfigurasi Detail Project:
- Di kolom Project ID, masukkan ID project untuk Action smart home Anda.
- Klik Next.
Konfigurasi Test Settings:
- 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.
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.
Jika Anda menggunakan fitur Scene, pilih Test Scene trait.
Jika Anda menjalankan test suite untuk perangkat Local Home, pilih Supports Local Home SDK.
- Pilih Local Fulfillment atau Seamless Setup.
- Klik Supports Local Query jika perangkat dapat menangani intent QUERY secara lokal.
Lakukan Test Run dan lihat hasilnya:
- Klik Next untuk mulai menjalankan pengujian. Antarmuka akan menampilkan perangkat dan fitur yang sedang diuji.
Lihat halaman Results &Submission:
- 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 Error getting module data: getModuleData error: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403 |
|
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:
- Setelah menerima hasil pengujian dan Anda siap mensertifikasi integrasi Cloud-to-cloud, klik Submit di alat Test Suite.
- Buka Google Home Developer Console > Cloud-to-cloud > Certify.
- Pilih integrasi yang ingin Anda sertifikasi.
- Di bagian Documentation, masukkan ID hasil Test Suite Anda.
Isi semua kolom yang wajib diisi, lalu klik Submit.