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. Es gibt also 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 zur Konsistenz mit den AVDs von Android Studio übereinstimmen

  • GPU-unterstützte beschleunigte Grafik

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

Vorteil Beschreibung Anwendungsfall/-fälle
Hochverfügbarkeit Wenn Sie mit virtuellen Geräten testen, können Sie Tests schneller ausführen und Ergebnisse schneller erhalten. Da virtuelle Geräte bei Bedarf erstellt werden, beginnen Ihre Tests fast sofort und Sie erhalten schnell eine Validierung Ihrer App. Testen kleiner Updates für Ihre 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 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 Nutzungsstufen, Kontingente und Preise für Test Lab.

App mit virtuellen Geräten testen

Sie können Ihre App mit virtuellen Geräten genauso 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 Tests für Android 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

Virtuelle Geräte erweitern Ihre 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 Entwicklungszyklus zu testen:

Android Studio-Emulator oder ein 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 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 Sie an freigegebenen Projekten arbeiten

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

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

Bevor Sie App-Updates mit wesentlichen Änderungen an der Benutzeroberfläche und den Funktionen veröffentlichen, empfehlen wir, Ihre App mit Test Lab auf physischen Geräten zu testen. So können Sie sicherstellen, dass Ihre App auf einer Vielzahl gängiger physischer Geräte stabil und leistungsfähig ist. Durch Tests auf physischen Geräten wird auch die Testabdeckung für alle App-Funktionen sichergestellt, die auf physischen Gerätefunktionen basieren, die nicht von virtuellen Geräten 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, verwirft alte und aktualisiert vorhandene. Wir wenden diese Updates auf unsere Images für virtuelle Geräte an, damit Sie mit aktuellen Android-Versionen testen können, die der Nutzererfahrung entsprechen.

In seltenen Fällen können diese Updates dazu führen, dass Tests unerwartet fehlschlagen. Wenn ein bekanntes, potenziell funktionsgefährdendes Update vorliegt, enthält Test Lab Informationen in den Versionshinweisen. Wir empfehlen, nach Möglichkeit Test-Frameworks wie Espresso zu verwenden, die robust gegenüber diesen Änderungen sind. Wenn das nicht möglich ist, empfehlen wir, virtuelle Arm-Geräte als Ziel zu verwenden, die voraussichtlich seltener aktualisiert werden.

Bekannte Einschränkungen

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

Feature Details
Binärschnittstellen (Application Binary Interfaces, ABIs) Nicht alle Geräte unterstützen alle ABIs. Wenn du mit dem Android NDK entwickelst, musst du Code für die ABIs generieren, die von den Geräten unterstützt werden, auf die du abzielst. Weitere Informationen findest du unter Verfügbare Geräte in Test Lab. Weitere Informationen zur ABI-Verwaltung findest du unter Android-ABIs.

Hinweis:Wenn ein Test in Ihrer Testmatrix als ungültig markiert ist, kann das daran liegen, dass Ihre App eine Abhängigkeit von nativem Code hat, der vom ABI des Geräts nicht unterstützt wird.

Grafikleistung Virtuelle Nexus- und Pixel-Geräte verwenden Software-Grafikrendering. 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 mit einem API-Level unter 29 nicht unterstützt. Neuere Geräte sind nicht zu 100% mit OpenGL-/Vulkan-APIs kompatibel. Es kann 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 (AR)-Funktion wird auf virtuellen Geräten nicht unterstützt.
Ältere API-Level Virtuelle Test Lab-Arm-Geräte unterstützen keine API-Level unter 26.

Nächste Schritte