iOS-App testen

Im Gegensatz zu anderen Arten von iOS-Apps gibt es bei einer App mit Home-APIs eigene Überlegungen 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 für das Testen einer Home APIs-App unerlässlich.

Es ist eine gute Strategie, Ihre Testgeräte in einem dedizierten WLAN zu isolieren. Dadurch werden Funkstörungen durch andere Geräte verhindert und Sie können verschiedene Netzwerkbedingungen wie eine gedrosselte Bandbreite simulieren.

Sie sollten verschiedene Smart-Home-Gerätetypen von unterschiedlichen Herstellern testen. Achten Sie darauf, dass Sie echte, physische Geräte verwenden. Virtuelle Geräte und Emulatoren haben zwar ihren Platz, sollten aber nicht ausschließlich verwendet werden.

Wenn Sie Ihre App mit 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:

  1. 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.
  2. Status synchronisieren, damit die App den aktuellen Status zeitnah und genau widerspiegelt.
  3. 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.
  4. Wenn deine App Szenen unterstützt, z. B. eine „Gute Nacht“-Szene, die alle Lichter ausschaltet, teste das Erstellen, Ändern und Ausführen von Szenen. Teste automatisierte Abläufe, 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:

  1. 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 geben Sie entsprechende Fehlermeldungen aus.
    • Testen Sie die App in externen Netzwerken und nicht nur im Heimnetzwerk.
  2. Gerätetrennung
    • Geräte physisch von der Stromversorgung trennen
    • Geräte aus- und wieder einschalten
  3. Gleichzeitige Vorgänge
    • Senden Sie eine schnelle Abfolge von Befehlen.
    • Lassen Sie mehrere Nutzer gleichzeitig versuchen, dasselbe Gerät zu steuern.
    • Überlappende Szenen und Automatisierungen testen
  4. Fehlerbehandlung
    • Erzwingen Sie API-Fehler, indem Sie beispielsweise Cloud-API-Serverantworten simulieren.
    • Testen Sie ungültige Eingaben des Nutzers.
    • Prüfen Sie, ob die Anwendung ordnungsgemäß heruntergestuft wird und ob informative Fehlermeldungen angezeigt werden.
  5. Zuverlässigkeit: Führen Sie die App und verbundene Geräte über einen längeren Zeitraum aus, um mögliche Speicherlecks oder Stabilitätsprobleme zu erkennen.

Vor dem Starten Ihrer App

Es wird empfohlen, 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 Funktionen 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.