Mit virtuellen Android-Geräten testen

In diesem Dokument werden AVDs für Test Lab beschrieben, einschließlich Vorteilen 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, die folgende Vorteile bieten:

  • 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 auf Anfrage erstellt werden, beginnen Ihre Tests fast sofort und Ihre App kann schnell validiert werden. 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 auf physischen Geräten mit Test Lab testen, bevor Sie wichtige App-Updates veröffentlichen

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. So lässt sich dafür sorgen, dass Ihre 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 Updates dazu führen, dass Tests unerwartet fehlschlagen. Wenn es ein bekanntes, potenziell fehlerhaftes Update gibt, enthält Test Lab Informationen in den Versionshinweisen. Wir empfehlen, nach Möglichkeit Test-Frameworks wie Espresso zu verwenden, die robust gegen diese Änderungen sind. 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. Bei grafikintensiven Anwendungen kann die Leistung sinken. 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 mit einem niedrigeren API-Level als 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) Der Test der Augmented Reality-Funktionen (AR) wird auf virtuellen Geräten nicht unterstützt.
Ältere API-Levels Test Lab Virtuelle ARM-Geräte unterstützen keine API-Levels unter 26.

Nächste Schritte