Google Home 測試套件

Google Home Test Suite 是一種網頁應用程式,可讓您自行測試智慧住宅動作。Test Suite 會根據與帳戶相關聯的裝置和特徵,自動產生並執行測試案例。完成測試後,您可以查看測試結果。

如要使用 Test Suite,並將測試結果提交給 Google 進行認證,請參閱測試並分享智慧型家居動作頁面。這個版本的 Test Suite 專門用於開發和品質確保。

Test Suite 執行的測試包括但不限於:

如要啟動 Test Suite 工具,請按一下下方的按鈕:

啟動 Test Suite

對動作進行自我測試

以下章節將說明如何在裝置和智慧型家居動作專案上執行 Test SuiteTest Suite 需要您登入,才能檢查 Google Home Graph 中的裝置,並直接將指令傳送至 Google Assistant

如要對動作進行自我測試,請按照下列步驟操作:

  1. 在網路瀏覽器中開啟 Test Suite
  2. 使用右上角的按鈕登入 Google。

  3. 設定「Project Details」

    1. 在「Project ID」欄位中,輸入智慧型家居動作的專案 ID。
    2. 點選「下一步」。
  4. 設定「Test Settings」

    1. 如果要驗證 Cloud-to-cloud 整合,請將預設的「Report State/Request Sync Timeout」值保持不變。不過,如果您的服務代理需要較長時間將狀態回報至 Home Graph,您可以變更逾時值來進行測試。
    2. 如果要驗證 Cloud-to-cloud 整合,請務必啟用「Test Request Sync」選項。在測試期間,系統會提示您新增、更新或移除裝置,並檢查裝置清單是否已在 Home Graph 中變更。變更動作會透過您要測試的整合服務進行。您測試的整合項目必須至少有一個裝置連結至代理程式使用者。

    3. 如果您使用 Scene 特徵,請選取「Test Scene」特徵

    4. 如果您要為 Local Home 裝置執行測試套件,請選取「支援 Local Home SDK」

      1. 選取「店面商品目錄」或「無縫設定」
      2. 如果裝置可以在本機處理 QUERY 意圖,請按一下「支援本機查詢」
  5. 執行測試執行並查看結果:

    1. 按一下「Next」即可開始執行測試。介面會顯示正在測試的裝置和特徵。
  6. 查看「結果與提交」頁面:

    1. 測試完成後,請按一下「下一步」查看結果。

測試結果包含通過和失敗的測試次數,以及表示通過率的最終分數。

帳戶連結驗證測試

帳戶連結在 Google 智慧住宅生態系統中扮演重要角色。Test Suite 中的帳戶連結驗證測試會檢查 OAuth 服務是否有潛在問題。

帳戶連結驗證測試包含驗證存取權杖更新權杖的測試:

存取權杖驗證測試

系統會測試從權杖交換端點傳回的存取權杖,確保其格式有效,並傳回有效的重新整理權杖。

測試項目 說明
檢查存取權杖是否為 JWT 格式 我們不建議使用 JWT 格式的存取權杖連結 Google 帳戶。如果找到 JWT 格式,系統會顯示以下警告: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.
檢查可到期的存取權杖是否有更新權杖。 存取權杖可過期時,必須提供更新權杖。如果找不到重新整理權杖,這項測試就會失敗。

重新整理權杖驗證測試

我們會測試重新整理權杖,確保權杖交換端點能正確交換新存取權杖。

測試項目 說明
使用無效的重新整理權杖,檢查合作夥伴回應。 您的伺服器應傳回 HTTP 400 Bad Request 錯誤,並將 {"error": "invalid_grant"} 傳送至無效的重新整理權杖要求。如果回應不符合「錯誤代碼或訊息」,則此測試案例會失敗。詳情請參閱 將換取權杖換成存取權杖
測試權杖在重新整理後是否已更新。 應在回應更新憑證要求時傳回新的存取權杖。如果您的伺服器提供相同的存取權杖,測試案例就會失敗。
檢查未過期的存取權存證是否仍有效。 系統會顯示存取權杖的到期時間。
檢查重新整理期間是否已輪替重新整理權杖。 我們會在更新權杖要求後,檢查更新權杖是否有所變更。如果重新整理權杖有所變更,您的伺服器應只在使用新的重新整理權杖後,才將舊的重新整理權杖設為無效,以免發生可能會中斷使用者帳戶連結的競爭狀態。如果您在使用新的權杖之前,就讓舊的重新整理權杖失效,測試就會失敗。

錯誤訊息

下表列出您可能會遇到的常見錯誤訊息,以及建議的解決方式。

錯誤訊息 解決方法
專案 <_id_> 先前未曾使用或已停用 HomeGraph API 確認已啟用 HomeGraph API
找不到要求的實體 確認 agentUserId 有效且已連結至您的服務。

請確認您在專案 ${your project id} 上具備 resourcemanager.projects.get 權限,並且已在同意畫面中授予所有權限。

取得模組資料時發生錯誤:getModuleData 錯誤:針對 https://hometestsuiteproxy-pa.googleapis.com/v1/module:get 的 HTTP 失敗回應:403 OK 403

  1. 請按照「排解身分與存取權管理權限問題」中的操作說明,確認您的帳戶具備專案的 resourcemanager.projects.get 權限。
  2. 前往「具有您帳戶存取權的應用程式」頁面,查看「智慧家庭測試套件」的以下權限:
    • 基本帳戶資訊
      1. 查看您的主要 Google 帳戶電子郵件地址
      2. 查看您的個人資訊,包括您已公開的任何個人資訊
    • 額外存取權
      1. 使用 Assistant:從你的 Google 帳戶中存取各種資料
      2. 檢查及控制 Home Graph 中的智慧住宅裝置
    如果您收到權限錯誤訊息,請先移除存取權,然後在再次登入時,在同意聲明畫面中授予所有權限。

提交測試結果

您必須先通過 100% 的測試,才能提交認證表單Test Suite如果您有任何需要手動測試的特徵,即使測試結果未達 100%,您仍應執行 Test Suite 工具並附加結果。

如要提交測試結果並認證 Cloud-to-cloud 整合,請按照下列步驟操作:

  1. 收到測試結果後,如果您已準備好認證 Cloud-to-cloud 整合作業,請按一下 Test Suite 工具中的「提交」
  2. 按一下「下載測試結果」按鈕,即可擷取測試結果。
  3. 按一下「前往提交表單」,將測試結果提交給 Google。
  4. 填寫所有必填欄位,然後按一下「提交」