Fehlerbehebung in Test Lab & Häufig gestellte Fragen
Auf dieser Seite finden Sie Hilfe zur Fehlerbehebung und Antworten auf häufig gestellte Fragen zum Ausführen von Tests mit Firebase Test Lab. Bekannte Probleme werden ebenfalls dokumentiert. Wenn Sie das Gesuchte nicht finden oder zusätzliche Hilfe benötigen, nehmen Sie an unserem #test-lab-Kanal auf Firebase Slack teil oder wenden Sie sich an den Firebase-Support.
Fehlerbehebung
Warum dauert der Test so lange?
Wenn Sie im Test Lab-Katalog ein Gerät mit hoher Kapazität auswählen, können Tests schneller gestartet werden. Wenn ein Gerät eine geringe Kapazität hat, kann die Ausführung von Tests länger dauern. Wenn die Anzahl der aufgerufenen Tests viel größer als die Kapazität der ausgewählten Geräte ist, kann es länger dauern, bis die Tests abgeschlossen sind.
Tests auf jeder Gerätekapazitätsebene können aufgrund der folgenden Faktoren länger dauern:
Traffic, der sich auf die Geräteverfügbarkeit und die Testgeschwindigkeit auswirkt.
Geräte- oder Infrastrukturfehler, die jederzeit auftreten können. Ob für Test Lab eine Infrastruktur gemeldet wurde, sehen Sie im Firebase-Status-Dashboard.
Weitere Informationen zur Gerätekapazität in Test Lab finden Sie in den Informationen zur Gerätekapazität für Android und iOS.
Warum erhalte ich nicht aussagekräftige Testergebnisse?
Nicht eindeutige Testergebnisse treten häufig aufgrund von abgebrochenen Tests oder Infrastrukturfehlern auf.
Infrastrukturfehler werden durch interne Test Lab-Probleme wie Netzwerkfehler oder unerwartetes Geräteverhalten verursacht. Test Lab beendet interne Testläufe, die mehrmals zu Infrastrukturfehlern führen, bevor ein nicht eindeutiger Testbericht erstellt wird. Sie können diese Wiederholungen jedoch mit failFast deaktivieren.
Wiederholen Sie den Test in Test Lab, um zu prüfen, ob er reproduzierbar ist.
Führen Sie den Test gegebenenfalls auf einem anderen Gerät oder Gerätetyp aus.
Sollte das Problem weiterhin auftreten, wenden Sie sich an das Test Lab-Team im #test-lab-Kanal auf Firebase Slack.
Warum haben meine Tests durch das Sharding länger gedauert?
Die Ausführung Ihrer Tests kann länger dauern, wenn die von Ihnen angegebene Anzahl von Shards die Anzahl der Geräte übersteigt, die in Test Lab verwendet werden können. Versuche, ein anderes Gerät zu verwenden, um dieses Problem zu vermeiden. Weitere Informationen zur Auswahl eines anderen Geräts finden Sie unter
Gerätekapazität
Warum dauert es so lange, bis mein Test beginnt?
Wenn Sie eine Testanfrage senden, wird Ihre App zuerst validiert, neu signiert usw., um Tests auf einem Gerät auszuführen. Normalerweise dauert dieser Vorgang weniger als ein paar Sekunden. Er kann jedoch von Faktoren wie der Größe Ihrer App beeinflusst werden.
Nachdem Ihre App vorbereitet wurde, werden Testausführungen geplant und bleiben in der Warteschlange, bis ein Gerät bereit ist, sie auszuführen. Bis alle Testausführungen abgeschlossen sind, lautet der Matrixstatus „Ausstehend“, unabhängig davon, ob Testausführungen in der Warteschlange stehen oder aktiv ausgeführt werden.
Warum dauert es so lange, bis mein Test abgeschlossen ist?
Nach Abschluss der Testausführung werden Testartefakte vom Gerät heruntergeladen, verarbeitet und auf Cloud Storage hochgeladen. Die Dauer dieses Schritts kann von der Anzahl und Größe der Artefakte beeinflusst werden.
Häufig gestellte Fragen
Wie hoch sind die kostenlosen Kontingente für Test Lab? Was soll ich tun, wenn meine Guthabenpunkte aufgebraucht sind?
Firebase Test Lab bietet kostenlose Kontingente für Tests auf Geräten und für die Verwendung von Cloud APIs. Für das Testkontingent gilt der standardmäßige Firebase-Preisplan, für die Cloud API-Kontingente hingegen nicht.
Testkontingent
Testkontingente richten sich nach der Anzahl der Geräte, auf denen Tests ausgeführt werden.
Der Firebase Spark-Tarif bietet Nutzern ein kostenloses, festes Testkontingent. Beim Blaze-Tarif können Ihre Kontingente erhöht werden, wenn Sie Google Cloud mit der Zeit stärker nutzen. Wenn Sie Ihr Testkontingent erreicht haben, warten Sie bis zum nächsten Tag oder wechseln Sie zum Blaze-Tarif, wenn Sie derzeit den Spark-Tarif nutzen.
Wenn Sie bereits den Blaze-Tarif nutzen, können Sie eine Kontingenterhöhung beantragen.
Weitere Informationen finden Sie unter Testkontingent.
Sie können die Nutzung Ihres Testkontingents in der Google Cloud Console überwachen.
Kontingent für die Cloud Testing API
Die Cloud Testing API hat zwei Kontingentlimits: Anfragen pro Tag und pro Projekt sowie Anfragen pro 100 Sekunden und pro Projekt. Sie können Ihre Nutzung in der Google Cloud-Konsole im Blick behalten.
Kontingent für die Cloud Tool Results API
Für die Cloud Tool Results API gelten zwei Kontingentlimits: Anfragen pro Tag und Projekt sowie Anfragen pro 100 Sekunden und Projekt. Sie können Ihre Nutzung in der Google Cloud-Konsole im Blick behalten.
Wenn Sie ein höheres API-Kontingent benötigen, füllen Sie ein Antragsformular in der Google Cloud Console aus oder wenden Sie sich an den Firebase-Support.
Wie finde ich heraus, ob die Zugriffe auf mein Backend von Test Lab stammen?
Sie können in Ihrem Back-End prüfen, ob Traffic von Firebase-gehosteten Testgeräten stammt, indem Sie die Quell-IP-Adresse mit unseren IP-Bereichen vergleichen.
Funktioniert Test Lab mit VPC-SC?
Test Lab funktioniert nicht mit VPC-SC, was das Kopieren von Apps und anderen Testartefakten zwischen dem internen Speicher von Test Lab und den Ergebnis-Buckets der Nutzer blockiert.
Wie erkenne ich fehlerhafte Tests in Test Lab?
Um in Ihren Tests fehlerhaftes Verhalten zu erkennen, empfehlen wir die Option
--num-flaky-test-attempts
. Wiederholungen von Defragmentierungsvorgängen werden wie normale Testausführungen in Rechnung gestellt oder auf Ihr Tageskontingent angerechnet.
Beachten Sie Folgendes:
Die gesamte Testausführung wird noch einmal ausgeführt, wenn ein Fehler erkannt wird. Es wird nicht unterstützt, nur fehlgeschlagene Testfälle noch einmal auszuführen.
Die Wiederholungsläufe der Defragmentierung werden zur gleichen Zeit geplant, laufen aber nicht garantiert parallel, z. B. wenn der Traffic die Anzahl der verfügbaren Geräte übersteigt.
Unterstützt Test Lab Appium, Flutter/FlutterDriver, ReactNative/Jest oder Cucumber?
Einige dieser Elemente sind zwar auf unserer Roadmap, wir können derzeit jedoch keine Zusicherungen zur Unterstützung dieser Plattformen für Tests und App-Entwicklung geben.
Wo finde ich Gerätedetails wie die Auflösung?
Detaillierte Geräteinformationen sind über die API verfügbar. Sie können über den gcloud-Client mit dem Befehl „describe“ darauf zugreifen:
gcloud firebase test ios models describe MODEL
Kann ich Sharding für iOS-Tests verwenden?
Das Sharding wird in Test Lab für iOS nicht nativ unterstützt. Sie können jedoch den Flank-Client verwenden, um iOS-Testfälle zu teilen.
Dazu legen Sie den Schlüssel und die Werte für OnlyTestIdentifiers in der Datei .xctestrun fest.
Weitere Informationen finden Sie auf der Seite man für xcodebuild.xctestrun.
Bekannte Probleme
Captchas bei der Anmeldung
Robotests können Anmeldebildschirme nicht umgehen, für die neben der Eingabe von Anmeldedaten noch eine zusätzliche Nutzeraktion erforderlich ist, z. B. das Ausfüllen eines CAPTCHAs.
Unterstützung für UI-Frameworks
Robo-Tests funktionieren am besten mit Apps, die UI-Elemente aus dem Android-UI-Framework verwenden (einschließlich View-, ViewGroup- und WebView-Objekte). Wenn Sie Robo Test zum Testen von Apps verwenden, die andere UI-Frameworks verwenden, einschließlich Apps, die die Unity-Game-Engine verwenden, wird der Test möglicherweise beendet, ohne dass der erste Bildschirm geprüft wurde.