Mit virtuellen Android-Geräten testen

In diesem Dokument werden die AVDs für Test Lab beschrieben, einschließlich der Vorteile und bekannten Einschränkungen. Außerdem geben wir Empfehlungen dazu, wie Sie Ihre App während des gesamten Entwicklungszyklus testen können. Test Lab AVDs ähneln AVDs für Android Studio, sind aber für die Leistung mit Cloud-Tests optimiert. Daher gibt es einige Unterschiede zwischen den beiden.

Test Lab-AVDs mit dem Suffix „.arm“ oder „(Arm)“ sind erweiterte Emulatoren mit folgenden Vorteilen:

  • Beschleunigte Testausführung

  • Bildschirmgrößen und ‑dichten, die mit den AVDs von Android Studio übereinstimmen, um für Einheitlichkeit zu sorgen

  • GPU-gestützte beschleunigte Grafik

In der folgenden Tabelle werden die Vorteile der Verwendung virtueller Geräte beschrieben:

Vorteil Beschreibung Anwendungsfälle
Hochverfügbarkeit Wenn Sie mit virtuellen Geräten testen, können Sie Tests schneller ausführen und Testergebnisse schneller erhalten. Da virtuelle Geräte bei Bedarf erstellt werden, starten Ihre Tests nahezu sofort und ermöglichen eine schnelle Validierung Ihrer Anwendung. Für kleine Updates Ihrer App oder für Regressionstests.
Längere Testdauer Virtuelle Geräte unterstützen eine Testdauer von bis zu 60 Minuten. Tests auf physischen Geräten sind auf eine Testdauer von 45 Minuten pro Gerät beschränkt. Längere Tests ausführen
Geringere Kosten Virtuelle Geräte kosten 1 $ pro Stunde und Gerät, das zum Testen Ihrer App verwendet wird. Tägliche Tests mit Continuous Integration-Systemen oder vor dem Einchecken von Code Weitere Informationen finden Sie unter Nutzungsstufen, Kontingente und Preise für Test Lab.

App mit virtuellen Geräten testen

Sie können Ihre App auf virtuellen Geräten genauso testen wie auf physischen Geräten. Sie können virtuelle Geräte für Ihre Tests auswählen, wenn Sie eine Testmatrix konfigurieren. Weitere Informationen zum Ausführen von Tests mit Test Lab finden Sie unter Erste Schritte mit Firebase Test Lab.

Unterstützte Modelle und APIs ansehen

Führen Sie den folgenden Befehl aus, um die von Test Lab unterstützten AVD-Modelle und APIs aufzurufen:

gcloud firebase test android models list --filter=virtual

Best Practices für das Testen Ihrer App

Mit virtuellen Geräten haben Sie mehr Möglichkeiten, wenn Sie Ihre App mit Test Lab testen. Wir empfehlen, die folgenden Best Practices zu verwenden, um Ihre App während des gesamten App-Entwicklungszyklus zu testen:

Android Studio-Emulator oder angeschlossenes physisches Gerät verwenden

Verwenden Sie bei der Entwicklung Ihrer App den Android Studio-Emulator oder ein angeschlossenes physisches Gerät, um jeden Build zur Erstvalidierung zu prüfen. Wenn Sie Instrumentierungstests haben, können Sie diese auch über Android Studio auf physischen oder virtuellen Geräten ausführen, die von Test Lab bereitgestellt werden.

CI-Systeme bei jeder Codeänderung verwenden, wenn an gemeinsamen Projekten gearbeitet wird

Wenn Sie an einem großen Projekt arbeiten oder an Projekten mitwirken, die über GitHub oder eine ähnliche Website geteilt werden, empfehlen wir Ihnen, CI-Systeme (Continuous Integration) zu verwenden. Testen Sie Ihre Apps auf virtuellen Geräten jedes Mal, wenn das CI-System ausgeführt wird, oder vor jedem Pull-Request. Weitere Informationen zur Verwendung von Test Lab mit CI-Systemen finden Sie unter Test Lab für Android mit Continuous Integration-Systemen verwenden.

App vor der Veröffentlichung wichtiger App-Updates auf physischen Geräten mit Test Lab testen

Bevor Sie App-Updates mit erheblichen Änderungen an der Benutzeroberfläche und Funktionalität veröffentlichen, empfehlen wir Ihnen, Ihre App mit Test Lab auf physischen Geräten zu testen. Dadurch sorgst du dafür, dass deine App auf einer Vielzahl gängiger physischer Geräte stabil und leistungsfähig ist. Tests auf physischen Geräten sorgen außerdem für eine Testabdeckung aller App-Funktionen, die auf physischen Gerätefunktionen basieren, die von virtuellen Geräten nicht simuliert werden. Weitere Informationen zu diesen Funktionen finden Sie unter Bekannte Einschränkungen.

Updates für virtuelle Geräte

Das Android-Team fügt regelmäßig neue virtuelle Gerätebilder hinzu, stellt alte ein und aktualisiert vorhandene. Wir wenden diese Updates auf unsere virtuellen Gerätebilder an, damit Sie mit aktuellen Android-Versionen testen können, die die Nutzung Ihrer Nutzer widerspiegeln.

In seltenen Fällen können diese Aktualisierungen dazu führen, dass Tests unerwartet fehlschlagen. Wenn es ein bekanntes, potenziell fehlerhaftes Update gibt, enthält Test Lab Informationen in den Versionshinweisen. Als Best Practice empfehlen wir die Verwendung von Test-Frameworks wie Espresso, die diesen Änderungen nach Möglichkeit gerecht werden. Ist das nicht möglich, empfehlen wir, die Ausrichtung auf virtuelle Arm-Geräte vorzunehmen, die seltener aktualisiert werden.

Bekannte Einschränkungen

Einige Funktionen physischer Geräte werden derzeit nicht von virtuellen Geräten simuliert oder nur eingeschränkt simuliert. In der folgenden Tabelle sind Funktionen zusammengefasst, die derzeit auf virtuellen Geräten nicht verfügbar sind oder mit bestimmten Einschränkungen verfügbar sind:

Feature Details
Application Binary Interfaces (ABI) Nicht alle Geräte unterstützen alle ABIs. Wenn Sie mit dem Android NDK entwickeln, müssen Sie Code für die ABIs generieren, die von den Zielgeräten unterstützt werden (siehe Verfügbare Geräte in Test Lab). Weitere Informationen zur ABI-Verwaltung finden Sie unter Android-ABIs.

Hinweis:Wenn ein Test in Ihrer Testmatrix als ungültig gekennzeichnet ist, kann das daran liegen, dass Ihre App von nativem Code abhängig ist, der vom Geräte-ABI nicht unterstützt wird.

Grafikleistung Auf virtuellen Nexus- und Pixel-Geräten wird Software-Grafikrendering verwendet. Grafikintensive Anwendungen können eine geringere Leistung aufweisen. Wenn Ihre App grafikintensiv ist, sollten Sie stattdessen SmallPhone.arm, MediumPhone.arm oder physische Geräte verwenden.
Grafik-APIs OpenGL ES 3.x wird auf Geräten unter API-Level 29 nicht unterstützt. Neuere Geräte sind nicht zu 100 % mit OpenGL-/Vulkan-APIs kompatibel. Es kann daher zu kleinen Unterschieden bei der Grafik kommen.
Google Play Store App Die Google Play Store App wird auf virtuellen Arm-Geräten nicht unterstützt.
Augmented Reality-Funktionen (AR) Das Testen der Augmented Reality-Funktionalität (AR) wird auf virtuellen Geräten nicht unterstützt.
Ältere API-Ebenen Test Lab Virtuelle ARM-Geräte unterstützen keine API-Levels unter 26.

Nächste Schritte