Google Home Test Paketi

Buluttan buluta    Local Home SDK

Google Home Test Suite, akıllı ev işleminizi kendiniz test etmenize olanak tanıyan bir web uygulamasıdır. Test Suite, hesabınızla ilişkili cihazlara ve özelliklere göre otomatik olarak test senaryoları oluşturup çalıştırır. Testleri tamamladığınızda test sonuçlarını görüntüleyebilirsiniz.

Test Suite simgesini kullanmak ve test sonuçlarınızı sertifika için Google'a göndermek üzere bilgi edinmek istiyorsanız Akıllı ev işlemlerini test etme ve paylaşma sayfasına bakın. Test Suite'nın bu sürümü özellikle geliştirme ve kalite güvencesi için tasarlanmıştır.

Test Suite tarafından yürütülen testler aşağıdakileri kapsar ancak bunlarla sınırlı değildir:

  • Cihazlarınız ve özellikleriniz için Rapor Durumu ve İstek Senkronizasyonu'nun uygulandığını kontrol eder.

  • QUERY amacının cihazınızda uygulandığını ve sonuçlarının Report State sonuçlarıyla eşleştiğini doğrular.

Aşağıdaki düğmeyi tıklayarak Test Suite aracını başlatabilirsiniz:

Başlatma Test Suite

İşleminizi kendi kendinize test etme

Aşağıdaki bölümde, cihazınızda ve akıllı ev işlemleri projenizde Test Suite nasıl çalıştırılacağı açıklanmaktadır. Test Suite Google Home Graph, Google Assistant cihazlarını inceleyebilmesi ve doğrudan komut gönderebilmesi için oturum açmanızı gerektirir.

İşleminizi kendiniz test etmek için aşağıdaki adımları uygulayın:

  1. Web tarayıcınızda Test Suite platformunu açın.
  2. Sağ üst köşedeki düğmeyi kullanarak Google'da oturum açın.

  3. Proje Ayrıntıları'nı yapılandırın:

    1. Proje kimliği alanına akıllı ev işleminizin proje tanımlayıcısını girin.
    2. İleri'yi tıklayın.
  4. Test Ayarları'nı yapılandırın:

    1. Cloud-to-cloud entegrasyonunuzu onaylıyorsanız varsayılan Rapor Durumu/İstek Senkronizasyonu Zaman Aşımı değerini değiştirmeyin. Ancak, test için aracı durumunu Home Graph'a bildirmek daha uzun sürüyorsa zaman aşımı değerini değiştirebilirsiniz.
    2. Cloud-to-cloud entegrasyonunuzu onaylıyorsanız Test İstek Senkronizasyonu seçeneğinin etkinleştirildiğinden emin olun. Test sırasında bir cihaz eklemeniz, güncellemeniz veya kaldırmanız ve cihaz listesinin Home Graph'te değişip değişmediğini kontrol etmeniz istenir. Değişiklik işlemleri, test ettiğiniz entegrasyon üzerinden yapılır. Test edilen entegrasyonunuzda her zaman temsilci kullanıcısına bağlı en az bir cihaz olmalıdır.

    3. Scene özelliği kullanıyorsanız Test Scene özelliğini seçin.

    4. Yerel Ev cihazları için test paketini çalıştırıyorsanız Yerel Ev SDK'sını destekler'i seçin.

      1. Yerel karşılama veya Sorunsuz Kurulum'u seçin.
      2. Cihaz, QUERY amacını yerel olarak işleyebiliyorsa Yerel Sorguyu Destekler'i tıklayın.
  5. Test çalıştırması gerçekleştirme ve sonuçları görüntüleme:

    1. Testleri çalıştırmaya başlamak için İleri'yi tıklayın. Arayüzde, test edilen cihazlar ve özellikler gösterilir.
  6. Sonuçlar ve Gönderim sayfasını görüntüleyin:

    1. Testler tamamlandıktan sonra sonuçları görüntülemek için Sonraki'yi tıklayın.

Test sonuçları, başarılı ve başarısız testlerin sayısını ve başarılı testlerin yüzdesini gösteren nihai bir puanı içerir.

Hesap bağlama doğrulama testi

Hesap bağlama, Google akıllı ev ekosisteminde önemli bir rol oynar. Test Suite içindeki hesap bağlama doğrulama testi, OAuth hizmetinizde olası sorunları kontrol eder.

Hesap bağlama doğrulama testi, erişim jetonlarını ve yenileme jetonlarını doğrulamaya yönelik testler içerir:

Erişim jetonu doğrulama testi

Jeton değişimi uç noktanızdan döndürülen erişim jetonları, geçerli bir biçime sahip olduklarından ve geçerli bir yenileme jetonuyla döndürüldüklerinden emin olmak için test edilir.

Test Öğeleri Açıklama
Erişim jetonunun JWT biçiminde olup olmadığını kontrol edin. Google Hesabı bağlama işleminde JWT biçimli erişim jetonları önerilmez. JWT biçimi bulunursa aşağıdaki uyarı gösterilir: 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.
Geçerlilik süresi dolabilen erişim jetonunun yenileme jetonu olup olmadığını kontrol edin. Erişim jetonunun süresi dolduğunda yeni jeton sağlanmalıdır. Yenileme jetonu bulunamazsa bu test başarısız olur.

Yenileme jetonu doğrulama testi

Jeton değişimi uç noktanızın, yenileme jetonlarını yeni erişim jetonlarıyla doğru şekilde değiştirdiğinden emin olmak için yenileme jetonları test edilir.

Test Öğeleri Açıklama
Geçersiz yenileme jetonuyla yenileme jetonu. İş ortağı yanıtı kontrol ediliyor. Sunucunuz, geçersiz bir yenileme jetonu isteğine {"error": "invalid_grant"} ile birlikte bir HTTP 400 Bad Request hatası döndürmelidir. Yanıttaki "hata kodu veya mesajı" eşleşmiyorsa bu test durumu başarısız olur. Daha fazla bilgi için erişim jetonları için Exchange yenileme jetonları başlıklı makaleyi ziyaret edin.
Jeton yenileme işleminden sonra erişim jetonunun güncellenip güncellenmediğini test edin. Yeni erişim jetonları, yenileme jetonu isteklerine yanıt olarak döndürülmelidir. Sunucunuz aynı erişim jetonunu sağlıyorsa test durumu başarısız olur.
Geçerlilik süresi dolmamış erişim jetonunun hâlâ geçerli olup olmadığını kontrol edin. Erişim jetonunun geçerlilik bitiş zamanı gösterilir.
Yenileme sırasında yenileme jetonunun döndürülüp döndürülmediğini kontrol edin. Yenileme jetonu isteğinden sonra yenileme jetonlarının değiştirilip değiştirilmediğini kontrol ederiz. Yenileme jetonu değişirse sunucunuz, kullanıcının hesap bağlantısını bozabilecek yarış koşullarını önlemek için eski yenileme jetonunu yalnızca yeni bir yenileme jetonu kullanıldıktan sonra geçersiz kılmalıdır. Yeni yenileme jetonu kullanılmadan önce eski yenileme jetonunu geçersiz kılarsanız test başarısız olur.

Hata mesajları

Aşağıdaki tabloda, karşılaşabileceğiniz bazı yaygın hata mesajları ve bunları çözmek için önerilen yöntemler listelenmiştir.

Hata Mesajı Çözüm
HomeGraph API, <_id_> kimlikli projede daha önce kullanılmadı veya devre dışı bırakıldı. HomeGraph API'yi etkinleştirdiğinizden emin olun.
İstenen tüzel kişi bulunamadı agentUserId cihazınızın geçerli olduğundan ve hizmetinize bağlı olduğundan emin olun.

resourcemanager.projects.get projesinde izin sahibi olduğunuzdan${your project id} ve izin ekranında tüm izinleri verdiğinizden emin olun.

Modül verileri alınırken hata oluştu: getModuleData error: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Hesabınızın proje için resourcemanager.projects.get izinlerine sahip olduğundan emin olmak üzere IAM izinleriyle ilgili sorunları giderme bölümündeki talimatları uygulayın.
  2. Hesabınıza erişimi olan uygulamalar sayfasına giderek "Akıllı ev için test paketi"nin aşağıdaki izinlerini kontrol edin:
    • Temel hesap bilgileri
      1. Birincil Google Hesabı e-posta adresinizi görün
      2. Herkese açık olarak sunduklarınız da dahil olmak üzere kişisel bilgilerinizi görme
    • Ek erişim
      1. Assistant cihazınızı kullanma: Google Hesabınıza geniş erişim
      2. Home Graph'teki akıllı ev cihazlarını denetleyip kontrol etme
    İzin hatası alırsanız önce erişimi kaldırın ve tekrar oturum açtığınızda izin verme ekranında tüm izinleri verin.

Test sonuçlarını gönderme

Sertifika için göndermeden önce Test Suite sonuçlarınızın testlerin% 100'ünü geçmesi gerekir. Manuel test gerektiren özellikleriniz varsa Test Suite aracını çalıştırmanız ve sonuç %100 geçmemiş olsa bile sonucu eklemeniz gerekir.

Test sonuçlarınızı göndermek ve Cloud-to-cloud entegrasyonunuzu onaylamak için aşağıdaki adımları uygulayın:

  1. Test sonuçlarınızı aldıktan ve Cloud-to-cloud entegrasyonunuzu sertifikalandırmaya hazır olduğunuzda Test Suite aracında Gönder'i tıklayın.
  2. Google Home Developer Console > Cloud-to-cloud > Certify'a (Sertifika) gidin.
  3. Sertifika almak istediğiniz entegrasyonu seçin.
  4. Belgeler bölümünde Test Suite sonuçları kimliğinizi girin.
  5. Tüm zorunlu alanları doldurun ve Gönder'i tıklayın.