Mit virtuellen Android-Geräten testen

In diesem Dokument werden 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 bei 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:

  • Schnellere Testausführung

  • Bildschirmgrößen und ‑dichten, die mit den AVDs von Android Studio übereinstimmen, um Konsistenz zu gewährleisten

  • GPU-unterstützte beschleunigte Grafiken

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

Vorteil Beschreibung Anwendungsfall
Hochverfügbarkeit Mit virtuellen Geräten können Sie Tests schneller ausführen und Testläufe schneller abschließen. Da virtuelle Geräte bei Bedarf erstellt werden, beginnen Ihre Tests fast sofort und Sie können Ihre App schnell validieren. Sie testen kleine Updates Ihrer App oder führen Regressionstests durch.
Längere Testzeiträume 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 für jedes virtuelle 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 Nutzungsebenen, Kontingente und Preise für Test Lab.

App mit virtuellen Geräten testen

Sie können Ihre App mit virtuellen Geräten auf dieselbe Weise testen wie mit 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 für Android-Tests.

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, Ihre App mit Test Lab zu 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 für die erste Validierung zu prüfen. Wenn Sie Instrumentationstests haben, können Sie diese Tests auch in Android Studio auf physischen oder virtuellen Geräten ausführen, die von Test Lab bereitgestellt werden.

CI-Systeme bei jeder Codeänderung in gemeinsamen Projekten verwenden

Wenn Sie an einem großen Projekt arbeiten oder zu Projekten beitragen, die über GitHub oder eine ähnliche Website geteilt werden, empfehlen wir Ihnen, Continuous Integration-Systeme (CI) 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 Benutzeroberfläche und Funktionen veröffentlichen, empfehlen wir, Ihre App mit Test Lab auf physischen Geräten zu testen. So wird sichergestellt, dass Ihre App auf einer Vielzahl beliebter physischer Geräte stabil und leistungsstark ist. Durch Tests auf physischen Geräten wird auch die Testabdeckung für alle App-Funktionen sichergestellt, 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 Images für virtuelle Geräte hinzu, stellt alte ein und aktualisiert vorhandene. Wir wenden diese Updates auf unsere Bilder für virtuelle Geräte an, damit Sie mit aktuellen Android-Versionen testen können, die die Nutzererfahrung Ihrer Nutzer widerspiegeln.

In seltenen Fällen können diese Updates dazu führen, dass Tests unerwartet fehlschlagen. Wenn es ein bekanntes Update gibt, das möglicherweise zu Problemen führt, wird Test Lab Informationen in den Versionshinweisen bereitstellen. Wir empfehlen, nach Möglichkeit Testframeworks wie Espresso zu verwenden, die robust gegenüber diesen Änderungen sind. Wenn das nicht möglich ist, empfehlen wir, Arm-basierte virtuelle Geräte zu verwenden, die voraussichtlich seltener aktualisiert werden.

Bekannte Einschränkungen

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

Feature Details
Binärschnittstellen (Application Binary Interfaces, ABIs) Nicht alle Geräte unterstützen alle ABIs. Wenn Sie das Android NDK verwenden, 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 beeinträchtigt sein. Wenn Ihre App grafiklastig 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. Daher kann es 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-Funktionen wird auf virtuellen Geräten nicht unterstützt.
Ältere API-Levels Test Lab Arm-basierte virtuelle Geräte unterstützen keine API-Levels unter 26.

Nächste Schritte