Von the docsAndroid Firebase Test Lab - Instrumentierung Tests mit Orchestrator, was ist der Zweck?
Neu: Instrumentierung Tests mit Orchestrator Android-Test Orchestrator unabhängig voneinander bei jedem Ihrer App Instrumentierung Tests ausführt, die mehrere Vorteile, aber auch einen Nachteil:
Vorteile
nicht doppelt benutzt state: Jeder Test wird in seiner eigenen Instrumentierungsinstanz ausgeführt, sodass sich der gemeinsame Status nicht über Tests anhäuft.
Isolieren Abstürze: Wenn der Test abstürzt, dauert es nur nach unten seine eigenen Instanz Instrumentation, so dass die anderen Prüfungen in der Suite noch laufen.
Drawback
Längere Laufzeit: Jeder Test seine eigene Instrumentation Instanz Lauf bedeutet, dass der Testprozess insgesamt etwas länger dauert. Die erhöhte Laufzeit kann sich auf die Nutzung oder Nutzung der Kontingente auswirken und kann dazu führen, dass Sie die Zeitlimits für Geräte erreichen.
Jetzt empfiehlt es, den neuen Orchestrator lokal auszuführen, um sicherzustellen, dass er funktioniert. so lief ich es nach testOptions meiner Moduls build.gradle Datei hinzufügen:
testOptions {
execution 'ANDROID_TEST_ORCHESTRATOR'
}
mit gradle Abhängigkeiten:
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestUtil 'com.android.support.test:orchestrator:1.0.1'
aber ich sehe keinen Unterschied, wenn dabei ./gradlew connectedCheck
Ich habe versucht, ein physikalisches Gerät einstecken und gleichzeitig den Emulator api 26 ausführen. Also hätte ich jetzt zwei Geräte an adb angeschlossen. Ausführen von ./gradlew connectedCheck. Ich sehe die folgende Ausgabe in der Konsole Terminal:
#./gradlew connectedCheck
Parallel execution with configuration on demand is an incubating feature.
> Configure project :app
Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
The Task.leftShift(Closure) method has been deprecated and is scheduled to be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
at build_495ocpxnm4a4fvowoj4qizq7q.run(/Users/me/Development/QA/android/MyApp/app/build.gradle:303)
(Run with --stacktrace to get the full stack trace of this deprecation warning.)
The CompileOptions.bootClasspath property has been deprecated and is scheduled to be removed in Gradle 5.0. Please use the CompileOptions.bootstrapClasspath property instead.
[newrelic.info] Android Gradle plugin version 3.+ detected. Using transform API
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
> Task :app:processLabsDebugGoogleServices
Parsing json file: /Users/me/Development/QA/android/Myapp/app/google-services.json
Starting 39 tests on Nexus_6P_API_26_oreo_xxhdpi(AVD) - 8.0.0
Starting 39 tests on SM-G610F - 7.0
<====---------> 33% EXECUTING [4m 40s]
es wurde der Test auf beiden Geräten ausgeführt. ist das was Orchestrator tut?
Was ist der Zweck des Orchestrators?
Haben Sie alle anderen Abhängigkeiten wie 'com.android.support.test: orchestrator: 1.0.1' hinzugefügt? Lesen Sie [hier] (https://developer.android.com/training/testing/junit-runner.html#ato-gradle) und [hier] (https://developer.android.com/topic/libraries/testing- support-library/packages.html) – MatPag
ja. Ich werde die Frage aktualisieren. – j2emanue