Beginnen Sie mit dem Testen mit Android Virtual Devices

Dieses Dokument beschreibt AVDs für Testlabore, einschließlich der Vorteile und bekannten Einschränkungen. Wir geben außerdem Empfehlungen zum Testen Ihrer App während des gesamten Entwicklungslebenszyklus. Testlabor-AVDs ähneln AVDs für Android Studio , sind jedoch für die Leistung bei Cloud-Tests optimiert, sodass es einige Unterschiede zwischen den beiden gibt.

Testlabor-AVDs mit dem Suffix .arm oder (Arm) sind erweiterte Emulatoren, die die folgenden Vorteile bieten:

  • Schnellere Testausführungszeit

  • Bildschirmgrößen und -dichten sind aus Gründen der Konsistenz an die AVDs von Android Studio angepasst

  • GPU unterstützt beschleunigte Grafik

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

Nutzen Beschreibung Anwendungsfälle)
Hohe Verfügbarkeit Beim Testen mit virtuellen Geräten können Sie Tests schneller ausführen und Testergebnisse erhalten. Da virtuelle Geräte bei Bedarf erstellt werden, beginnen Ihre Tests fast sofort und ermöglichen eine schnelle Validierung Ihrer App. Testen Sie kleine Updates Ihrer App oder für Regressionstests.
Längere Testdauern 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 begrenzt. Führen Sie längere Tests durch
Geringere Kosten Der Preis für virtuelle Geräte beträgt 1 US-Dollar pro Stunde für jedes virtuelle Gerät, das zum Testen Ihrer App verwendet wird. Tägliche Tests mit kontinuierlichen Integrationssystemen oder vor dem Einchecken von Code. Weitere Informationen finden Sie unter Nutzungsniveaus, Kontingente und Preise für Test Lab .

Testen Sie Ihre App mit virtuellen Geräten

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 dem Testen für Android mit Firebase Test Lab .

Unterstützte Modelle und APIs anzeigen

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

gcloud firebase test android models list --filter=virtual

Best Practices zum Testen Ihrer App

Virtuelle Geräte erweitern Ihre Möglichkeiten, wenn Sie Ihre App mit Test Lab testen. Wir empfehlen die Verwendung der folgenden Best Practices, um Ihre App während des gesamten App-Entwicklungslebenszyklus zu testen:

Verwenden Sie den Android Studio-Emulator oder ein angeschlossenes physisches Gerät

Verwenden Sie beim Entwickeln Ihrer App den Android Studio-Emulator oder ein angeschlossenes physisches Gerät, um jeden Build auf eine erste Validierung zu untersuchen. Wenn Sie über Instrumentierungstests verfügen, können Sie diese Tests auch über Android Studio auf physischen oder virtuellen Geräten ausführen, die von Test Lab bereitgestellt werden.

Verwenden Sie CI-Systeme bei jeder Codeänderung, wenn Sie an gemeinsamen Projekten arbeiten

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

Testen Sie Ihre App auf physischen Geräten mit Test Lab, bevor Sie wichtige App-Updates veröffentlichen

Bevor Sie App-Updates mit wesentlichen Änderungen an der Benutzeroberfläche und Funktionalität veröffentlichen, empfehlen wir Ihnen, Test Lab zu verwenden, um Ihre App auf physischen Geräten zu testen. Dadurch wird sichergestellt, dass Ihre App auf einer Vielzahl gängiger physischer Geräte stabil und leistungsfähig ist. Das Testen auf physischen Geräten stellt außerdem die Testabdeckung für alle App-Funktionen sicher, die auf physischen Gerätefunktionen basieren, die nicht durch virtuelle Geräte simuliert werden. Weitere Informationen zu diesen Funktionen finden Sie unter Bekannte Einschränkungen .

Aktualisierungen virtueller Geräte

Das Android-Team fügt regelmäßig neue Images virtueller Geräte hinzu, verwirft alte und aktualisiert bestehende. Wir wenden diese Updates auf unsere virtuellen Geräte-Images an, um sicherzustellen, dass Sie mit aktuellen Android-Versionen testen, die die Erfahrungen Ihrer Benutzer widerspiegeln.

In seltenen Fällen können diese Updates dazu führen, dass Tests unerwartet fehlschlagen. Wenn bekannt ist, dass ein potenziell störendes Update vorliegt, wird Test Lab Informationen in die Versionshinweise aufnehmen. Als Best Practice empfehlen wir Ihnen, nach Möglichkeit Test-Frameworks zu verwenden – zum Beispiel Espresso – die diesen Änderungen standhalten. Wenn dies nicht möglich ist, empfehlen wir Ihnen, virtuelle Arm-Geräte ins Visier zu nehmen, die voraussichtlich seltener aktualisiert werden.

Bekannte Einschränkungen

Einige physische Gerätefunktionen werden derzeit nicht oder nur mit einigen Einschränkungen durch virtuelle Geräte simuliert. Die folgende Tabelle fasst Funktionen zusammen, die derzeit auf virtuellen Geräten nicht verfügbar sind oder mit bestimmten Einschränkungen verfügbar sind:

Besonderheit Einzelheiten
Anwendungsbinäre Schnittstellen (ABI) Nicht alle Geräte unterstützen alle ABIs. Wenn Sie mit dem Android NDK entwickeln, stellen Sie sicher, dass Sie Code für die ABIs generieren, die von den Zielgeräten unterstützt werden (siehe Verfügbare Geräte im Testlabor). Weitere Informationen zur ABI-Verwaltung finden Sie unter Android-ABIs .

Hinweis: Wenn ein Test in Ihrer Testmatrix als „Ungültig“ markiert ist, kann dies daran liegen, dass Ihre App von nativem Code abhängig ist, der von der Geräte-ABI nicht unterstützt wird.

Grafikleistung Virtuelle Nexus- und Pixel-Geräte verwenden Software-Grafik-Rendering. Bei grafikintensiven Anwendungen kann die Leistung geringer sein. Wenn Ihre App grafikintensiv ist, sollten Sie stattdessen die Verwendung von SmallPhone.arm, MediumPhone.arm oder physischen Geräten in Betracht ziehen.
Grafik-APIs OpenGL ES 3.x wird auf Geräten unter API-Level 29 nicht unterstützt. Neuere Geräte sind nicht 100 % kompatibel mit OpenGL/Vulkan-APIs, Sie bemerken möglicherweise kleine Unterschiede in der Grafik.
Google Play Store-App Die Google Play Store App wird auf virtuellen Arm-Geräten nicht unterstützt.
Augmented Reality (AR)-Funktionalität Das Testen der Augmented Reality (AR)-Funktionalität wird auf virtuellen Geräten nicht unterstützt.
Ältere API-Ebenen Virtuelle Test Lab Arm-Geräte unterstützen keine API-Ebenen unter 26.

Nächste Schritte