Fehlerbehebung in Test Lab & Häufig gestellte Fragen
Auf dieser Seite finden Sie Hilfe bei der 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 einer hohen Kapazität auswählen, werden die Tests möglicherweise schneller gestartet. 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, können die Tests länger dauern.
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 Infrastrukturausfälle können jederzeit auftreten. 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 in Cloud Storage hochgeladen. Die Dauer dieses Schritts kann von der Menge 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 zum Testen 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 Tarif „Blaze“ nutzen, können Sie eine Kontingenterhöhung anfordern.
Weitere Informationen finden Sie unter Testkontingent.
Sie können die Nutzung Ihres Testkontingents in der Google Cloud-Konsole verfolgen.
Kontingent für die Cloud Testing API
Für die Cloud Testing API gelten zwei Kontingentlimits: Anfragen pro Tag pro Projekt und Anfragen alle 100 Sekunden pro Projekt. Sie können Ihre Nutzung in der Google Cloud-Konsole im Blick behalten.
Kontingent für die Cloud Tool Results API
Die Cloud Tool Results API hat zwei Kontingentlimits: Abfragen pro Tag und Projekt sowie Abfragen pro 100 Sekunden und Projekt. Sie können Ihre Nutzung in der Google Cloud-Konsole überwachen.
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?
Um festzustellen, ob Traffic von Testgeräten stammt, die von Firebase gehostet werden, vergleichen Sie die Quell-IP-Adresse mit unseren IP-Bereichen.
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 sind für die gleiche Zeit geplant, werden aber nicht garantiert parallel ausgeführt, 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 und können vom gcloud-Client mit dem Befehl „describe“ aufgerufen werden:
gcloud firebase test ios models describe MODEL
Kann ich Sharding für iOS-Tests verwenden?
Fragmentierung wird in Test Lab für iOS nativ nicht unterstützt. Sie können jedoch den Flank-Client verwenden, um iOS-Testfälle zu teilen.
Dazu werden OnlyTestIdentifiers-Schlüssel und -Werte in der Datei .xctestrun festgelegt.
Weitere Informationen zu xcodebuild.xctestrun findest du auf der Seite man.
Bekannte Probleme
Captchas bei der Anmeldung
Der Robo-Test kann keine Anmeldebildschirme umgehen, auf denen neben der Eingabe der Anmeldedaten für die Anmeldung weitere Nutzeraktionen erforderlich sind, z. B. das Ausführen eines CAPTCHA.
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-Objekten. 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.