Im Gegensatz zu anderen Arten von iOS-Apps gibt es bei Apps, die die Home-APIs verwenden, eigene Besonderheiten und Herausforderungen, darunter Abhängigkeiten von physischen Smart-Home-Geräten, Netzwerkzuverlässigkeit, Sicherheit und Datenschutz sowie Geräte- und Protokollinteroperabilität. Diese Unterschiede wirken sich auf das Testen aus.
Testumgebung einrichten
Eine robuste Testumgebung ist unerlässlich, um eine Home APIs-App zu testen.
Es empfiehlt sich, Ihre Testgeräte in einem separaten WLAN zu isolieren. Dadurch werden Störungen durch andere Geräte verhindert und Sie können verschiedene Netzwerkbedingungen wie eine gedrosselte Bandbreite simulieren.
Sie sollten mit verschiedenen Smart-Home-Gerätetypen von verschiedenen Herstellern testen. Testen Sie unbedingt mit echten, physischen Geräten. Virtuelle Geräte und Emulatoren haben ihre Berechtigung, sollten aber nicht ausschließlich verwendet werden.
Wenn Sie Ihre App auf einer Vielzahl von iOS-Geräten verschiedener Hersteller mit unterschiedlichen Bildschirmgrößen und verschiedenen iOS-Versionen testen, können Sie die Kompatibilität ebenfalls besser überprüfen.
Werkzeuge zusammenstellen
Die folgenden Tools sind hilfreich beim Testen einer Home APIs-App:
| Tool | Beschreibung |
|---|---|
| Google Home Playground | Sie sind kein Ersatz für Tests mit echten physischen Geräten, aber für viele Testszenarien von unschätzbarem Wert. |
| Matter Virtual Device (MVD) | Eine weitere Emulations-App, die beim Testen mit Matter-Geräten in einer Home-APIs-App hilfreich sein kann. |
| Netzwerkemulator | Sie können verschiedene Netzwerkbedingungen und API-Antworten simulieren, was besonders hilfreich ist, wenn Sie ein Cloud-Backend verwenden. |
| TestFlight | Ermöglicht die Automatisierung von UI-Tests. Sie müssen die zugrunde liegende API simulieren, um Hardwareinteraktionen zu simulieren. |
| XCode Console | Verarbeitet und analysiert Logdaten. |
| XCUIAutomation | Ermöglicht die Automatisierung von UI-Tests. Sie müssen die zugrunde liegende API simulieren, um Hardwareinteraktionen zu simulieren. |
Verschiedene Testansätze und ‑strategien anwenden
Sie sollten verschiedene Testmethoden für Ihre Home-APIs-App anwenden. Allgemeine Informationen zu verschiedenen Methoden finden Sie unter Apps in TestFlight testen. Zusätzlich zu den Tests zur Nutzerfreundlichkeit und Sicherheit, die für alle iOS-Apps erforderlich sind, sind einige Testbereiche für Home-APIs-Apps besonders wichtig. Sie werden in den folgenden Abschnitten genauer beschrieben.
Funktionstests
Je nach den Funktionen Ihrer App sollten Sie auf einige der folgenden Bereiche besonders achten:
- Geräteerkennung und ‑kopplung, einschließlich Ersteinrichtung und Kopplung mit neuen Geräten, erneute Erkennung vorhandener Geräte nach App-Neustarts, Geräte-Neustarts oder Netzwerkänderungen. Prüfen Sie auch Szenarien wie nicht reagierende Geräte oder Nutzer, die falsche Anmeldedaten eingeben.
- Status synchronisieren, damit die App den aktuellen Status zeitnah und korrekt widerspiegelt.
- Wie Berechtigungen verwaltet und erzwungen werden, insbesondere wenn Ihre App mehrere Nutzer oder den gemeinsamen Zugriff auf das Zuhause unterstützt. Dazu gehört auch, dass Ihre App widerrufene Berechtigungen ordnungsgemäß verarbeitet.
- Wenn Ihre App Szenen unterstützt, z. B. eine Szene „Gute Nacht“, mit der alle Lichter ausgeschaltet werden, testen Sie das Erstellen, Ändern und Ausführen von Szenen. Automatisierungen testen, einschließlich Auslöser und Aktionen.
Leistungstests
Prüfen Sie, ob Ihre App reagiert und keine unnötige Latenz verursacht. Testen Sie nach Möglichkeit mit einer großen Anzahl von Geräten, um die Skalierbarkeit und die Leistung Ihrer App unter Last zu bewerten. Achten Sie auch auf den CPU-, Arbeitsspeicher- und Akkuverbrauch Ihrer App, insbesondere während der aktiven Gerätekommunikation, um zu sehen, ob die Ressourcennutzung angemessen ist.
Zuverlässigkeits- und Stabilitätstests
Da Home-APIs von der Netzwerkverbindung abhängig sind, sollten Apps, die diese APIs verwenden, in den folgenden Szenarien getestet werden:
- Netzwerkschwankungen
- Simulieren Sie WLAN-Ausfälle, schwache Signale und Netzwerkwechsel.
- Prüfen Sie, ob Ihre App Verbindungsunterbrechungen und ‑wiederherstellungen ordnungsgemäß verarbeitet.
- Prüfen Sie, ob Befehle in die Warteschlange gestellt und ausgeführt werden, wenn die Verbindung wiederhergestellt wird, oder ob entsprechende Fehlermeldungen angezeigt werden.
- Testen Sie die App nicht nur im Heimnetzwerk, sondern auch in anderen Netzwerken.
- Gerät trennen
- Geräte physisch von der Stromversorgung trennen
- Geräte aus- und wieder einschalten
- Gleichzeitige Vorgänge
- Senden Sie eine schnelle Abfolge von Befehlen.
- Mehrere Nutzer versuchen, dasselbe Gerät gleichzeitig zu steuern.
- Überlappende Szenen und Automatisierungen testen
- Fehlerbehandlung
- API-Fehler erzwingen, z. B. durch Mocking von Cloud-API-Serverantworten.
- Testen Sie ungültige Eingaben des Nutzers.
- Prüfen Sie, ob die Funktion ordnungsgemäß herabgestuft wird und ob informative Fehlermeldungen angezeigt werden.
- Zuverlässigkeit: Führen Sie die App und die verbundenen Geräte über einen längeren Zeitraum aus, um mögliche Speicherlecks oder Stabilitätsprobleme zu erkennen.
Vor dem Starten Ihrer App
Wir empfehlen, eine App, die die Home-APIs verwendet, vor der Veröffentlichung gründlich zu testen, um sicherzustellen, dass sie alle funktionalen und Qualitätsanforderungen erfüllt. Verwenden Sie den Google Home APIs App Test Report als Leitfaden zum Testen der Funktionalität Ihrer App.
Wenn Sie aufgefordert werden, den Google Home APIs App Test Report einzureichen, senden Sie ihn an Ihren Google-Technical Account Manager (TAM). Er kann den Bericht dann prüfen und als Referenz beim Testen Ihrer App verwenden.