與其他類型的 Android 應用程式不同,Home API 應用程式有其獨特的考量和挑戰,包括對實體智慧住宅裝置的依附元件、網路可靠性、安全性與隱私權,以及裝置和通訊協定的互通性。這些差異會影響測試。
設定測試環境
如要測試 Home API 應用程式,健全的測試環境至關重要。
建議您將 Home API 測試裝置連上專屬 Wi-Fi 網路,這樣可避免其他裝置干擾,並模擬不同的網路狀況,例如頻寬受到限制。
建議您測試各種智慧住宅裝置類型,包括不同製造商的產品。請務必使用實體裝置進行測試。虛擬裝置和模擬器有其用途,但不應完全依賴這些工具。
同樣地,使用多個製造商的各種 Android 裝置測試應用程式,這些裝置的螢幕尺寸各不相同,且搭載不同 Android 版本,有助於驗證更廣泛的相容性。
備妥工具
下列工具有助於測試 Home API 應用程式:
工具 | 說明 |
---|---|
Google Home Plugin for Android Studio | 提供 Google Assistant Simulator、Home Graph 檢視器、Google Cloud Logging 和 Android Debug Bridge (adb) 記錄檢視器存取權。 |
Google Home Playground | 雖然無法取代使用實體裝置進行測試,但對於許多測試情境來說,這項工具非常實用。 |
Matter Virtual Device (MVD) | 在 Home API 應用程式中使用 Matter 裝置進行測試時,這款模擬應用程式也很有幫助。 |
Espresso | 可自動執行 UI 測試。您需要模擬基礎 API,才能模擬硬體互動。 |
網路模擬器 | 可模擬各種網路狀況和 API 回應,如果 Home API 使用雲端後端,這項功能就特別實用。 |
Android Studio Logcat | 處理及分析記錄資料。 |
採用不同的測試方法和策略
您應對 Home API 應用程式採用各種測試方法。如需不同方法的相關一般資訊,請參閱「在 Android 上測試應用程式」。除了所有 Android 應用程式都應接受的使用者體驗和安全性測試外,部分測試領域與 Home API 應用程式特別相關,以下章節將詳細說明。
功能測試
視應用程式的功能而定,您可能需要特別注意下列部分領域:
- 裝置探索和配對,包括初始設定和與新裝置配對、應用程式重新啟動後重新探索現有裝置,以及裝置重新啟動或網路變更。此外,也請檢查無回應裝置或使用者輸入錯誤憑證等情境。
- 狀態同步處理,確保應用程式能及時更新,準確反映目前狀態。
- 權限的管理和強制執行方式,特別是應用程式支援多位使用者或共用住家存取權時。包括確認應用程式是否能妥善處理遭撤銷的權限。
- 如果應用程式支援情境 (例如關閉所有燈具的「晚安」情境),請測試情境的建立、修改和執行作業。測試自動化動作,包括啟動條件和動作。
效能測試
確認應用程式反應迅速,不會造成不必要的延遲。請盡可能使用大量裝置進行測試,評估可擴充性,以及應用程式在負載下的效能。此外,請查看應用程式的 CPU、記憶體和電池耗電量,特別是在裝置主動通訊期間,瞭解應用程式的資源使用量是否合理。
可靠性和穩定性測試
由於 Home API 應用程式依賴網路連線,因此應針對下列情境進行測試:
- 網路波動
- 模擬 Wi-Fi 斷線、訊號微弱和網路切換。
- 確認應用程式能妥善處理連線中斷和重新連線的情況。
- 確認連線恢復後,指令會排入佇列並執行,或提供適當的錯誤訊息。
- 從遠端網路測試應用程式,而不只是從家用網路測試。
- 裝置中斷連線
- 拔除裝置的電源線。
- 將裝置重新開機。
- 並行作業
- 快速傳送一連串指令。
- 讓多位使用者同時嘗試控制同一部裝置。
- 測試重疊的場景和自動化動作。
- 處理錯誤
- 強制產生 API 錯誤,例如模擬 Cloud API 伺服器回應。
- 測試使用者輸入的無效內容。
- 確認正常降級和提供資訊的錯誤訊息。
- 穩定性:長時間執行應用程式和連線裝置,找出可能的記憶體洩漏或穩定性問題。