iOS-App testen

Im Gegensatz zu anderen Arten von iOS-Apps müssen bei Apps, die die Home APIs verwenden, bestimmte Aspekte berücksichtigt werden. Dazu gehören Abhängigkeiten von physischen Smart-Home-Geräten, die Zuverlässigkeit des Netzwerks, Sicherheit und Datenschutz sowie die Interoperabilität von Geräten und Protokollen. Diese Unterschiede wirken sich auf die Tests aus.

Testumgebung einrichten

Eine robuste Testumgebung ist für das Testen einer App, die die Home APIs verwendet, unerlässlich.

Es empfiehlt sich, die Testgeräte in einem separaten WLAN zu isolieren. So können Sie Störungen durch andere Geräte vermeiden und verschiedene Netzwerkbedingungen wie eine gedrosselte Bandbreite simulieren.

Sie sollten verschiedene Smart-Home-Gerätetypen von unterschiedlichen Herstellern testen. Verwenden Sie dabei echte, physische Geräte. Virtuelle Geräte und Emulatoren sind zwar nützlich, sollten aber nicht ausschließlich verwendet werden.

Wenn Sie Ihre App mit verschiedenen iOS-Geräten von mehreren Herstellern mit unterschiedlichen Bildschirmgrößen und verschiedenen iOS-Versionen testen, können Sie die Kompatibilität besser überprüfen.

Tools zusammenstellen

Die folgenden Tools sind beim Testen einer App, die die Home APIs verwendet, hilfreich:

Tool Beschreibung
Google Home Playground Kein Ersatz für Tests mit echten physischen Geräten, aber unschätzbar wertvoll für viele Testszenarien.
Matter Virtual Device (MVD) Eine weitere Emulations-App, die beim Testen mit Matter Geräten in einer App, die die Home APIs verwendet, hilfreich sein kann.
Ein Netzwerkemulator Mit dem Netzwerkemulator können Sie verschiedene Netzwerkbedingungen und API-Antworten simulieren, das ist besonders hilfreich, wenn Sie ein Cloud-Backend verwenden.
TestFlight Mit TestFlight können Sie UI-Tests automatisieren. Sie müssen die zugrunde liegende API simulieren, um Hardwareinteraktionen zu simulieren.
Xcode Console Verarbeitet und analysiert Logdaten.
XCUIAutomation Mit XCUIAutomation können Sie UI-Tests automatisieren. Sie müssen die zugrunde liegende API simulieren, um Hardwareinteraktionen zu simulieren.

Verschiedene Testansätze und -strategien anwenden

Sie sollten verschiedene Testansätze für Ihre App anwenden, die die Home APIs verwendet. Für allgemeine Informationen zu verschiedenen Methoden siehe Apps in TestFlight testen. Neben den Tests zur Nutzerfreundlichkeit und Sicherheit, die für alle iOS-Apps erforderlich sind, sind einige Testbereiche besonders relevant für Apps, die die Home APIs verwenden. Diese 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 der Ersteinrichtung und Kopplung mit neuen Geräten, der erneuten Erkennung vorhandener Geräte nach App-Neustarts, Geräte-Neustarts oder Netzwerkänderungen. Prüfen Sie auch Szenarien wie nicht reagierende Geräte oder wenn ein Nutzer falsche Anmeldedaten eingibt.
  2. Statussynchronisierung: Die App muss zeitnah aktualisiert werden, um den aktuellen Status korrekt widerzugeben.
  3. Verwaltung und Durchsetzung von Berechtigungen, insbesondere wenn Ihre App mehrere Nutzer oder einen gemeinsamen Zugriff auf das Zuhause unterstützt. Dazu gehört auch, dass Ihre App widerrufene Berechtigungen ordnungsgemäß verarbeitet.
  4. Wenn Ihre App Szenen unterstützt, z. B. eine „Gute Nacht“-Szene, mit der alle Lichter ausgeschaltet werden, testen Sie das Erstellen, Ändern und Ausführen von Szenen. Testen Sie Automatisierungen, einschließlich Auslöser und Aktionen.

Leistungstests

Prüfen Sie, ob Ihre App reaktionsschnell ist 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 die CPU-, Arbeitsspeicher- und Akkunutzung Ihrer App, insbesondere bei der aktiven Gerätekommunikation, um zu prüfen, ob die Ressourcennutzung angemessen ist.

Tests zur Zuverlässigkeit und Stabilität

Da Apps, die die Home APIs verwenden, von der Netzwerkverbindung abhängig sind, sollten sie in den folgenden Szenarien getestet werden:

  1. Netzwerkschwankungen
    • Simulieren Sie WLAN-Ausfälle, schwache Signale und Netzwerkwechsel.
    • Prüfen Sie, ob Ihre App Verbindungsabbrüche und Wiederverbindungen ordnungsgemäß verarbeitet.
    • Prüfen Sie, ob Befehle in die Warteschlange gestellt und ausgeführt werden, wenn die Verbindung wiederhergestellt ist, oder ob entsprechende Fehlermeldungen angezeigt werden.
    • Testen Sie die App nicht nur im Heimnetzwerk, sondern auch in anderen Netzwerken.
  2. Gerätetrennung
    • Trennen Sie die Geräte physisch.
    • Schalten Sie die Geräte aus und wieder ein.
  3. Gleichzeitige Vorgänge
    • Senden Sie eine schnelle Abfolge von Befehlen.
    • Lassen Sie mehrere Nutzer gleichzeitig versuchen, dasselbe Gerät zu steuern.
    • Testen Sie sich überschneidende Szenen und Automatisierungen.
  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 App ordnungsgemäß herabgestuft wird und informative Fehlermeldungen angezeigt werden.
  5. 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

Es empfiehlt sich, eine App, die die Home APIs verwendet, vor dem Starten gründlich zu testen, um zu prüfen, ob sie alle funktionalen und qualitativen Anforderungen erfüllt. Verwenden Sie den Google Home APIs App Test Report als Leitfaden, um die Funktionen Ihrer App zu testen.

Wenn Sie aufgefordert werden, den Google Home APIs App Test Report einzureichen, senden Sie den Bericht an Ihren Google Technical Account Manager (TAM), damit er den Bericht überprüfen und als Referenz beim Testen Ihrer App verwenden kann.