web-dev-qa-db-fra.com

Android Le framework de test Studio 3.6 s'est fermé de manière inattendue, Crash de l'orchestrateur

J'ai du mal à exécuter des tests instrumentés dans Android Studio.

Lorsque j'essaie d'exécuter plusieurs cas de test, "Le cadre de test se ferme de manière inattendue" s'affiche:

Android studio test framework quit unexpectedly screenshot

... et tous les tests continuent de s'exécuter dans l'émulateur, mais Android Studio ne récupère pas les résultats.

Logcat montre ceci:

...
03-17 11:38:59.236  1699  1719 W ActivityManager: Scheduling restart of crashed service androidx.test.orchestrator/.OrchestratorService in 1000ms
03-17 11:38:59.236  1699  1719 W ActivityManager: Crash of app androidx.test.orchestrator running instrumentation ComponentInfo{androidx.test.orchestrator/androidx.test.orchestrator.AndroidTestOrchestrator}
03-17 11:38:59.236  1699  1721 W zygote  : kill(-8537, 9) failed: No such process
03-17 11:38:59.238  1699 13861 W Binder  : Outgoing transactions from this process must be FLAG_ONEWAY
03-17 11:38:59.238  1699 13861 W Binder  : Java.lang.Throwable
03-17 11:38:59.238  1699 13861 W Binder  :  at Android.os.BinderProxy.transact(Binder.Java:752)
03-17 11:38:59.238  1699 13861 W Binder  :  at Android.app.IInstrumentationWatcher$Stub$Proxy.instrumentationFinished(IInstrumentationWatcher.Java:160)
03-17 11:38:59.238  1699 13861 W Binder  :  at com.Android.server.am.InstrumentationReporter$MyThread.run(InstrumentationReporter.Java:86)
03-17 11:38:59.281  1699  1721 W zygote  : kill(-8537, 9) failed: No such process
03-17 11:38:59.323  1699  1721 W zygote  : kill(-8537, 9) failed: No such process
03-17 11:38:59.353 13845 13845 W app_process: Unexpected CPU variant for X86 using defaults: x86
03-17 11:38:59.362  1699  1721 W zygote  : kill(-8537, 9) failed: No such process
03-17 11:38:59.385  1699  1741 W PackageManager: Code path for androidx.test.orchestrator changing from /data/app/androidx.test.orchestrator-fgDRlA7iNSNiyWm4dLj4hg== to /data/app/androidx.test.orchestrator-6QljegpCqjAHwDuS_O9G9Q==
03-17 11:38:59.385  1699  1741 W PackageManager: Resource path for androidx.test.orchestrator changing from /data/app/androidx.test.orchestrator-fgDRlA7iNSNiyWm4dLj4hg== to /data/app/androidx.test.orchestrator-6QljegpCqjAHwDuS_O9G9Q==
03-17 11:38:59.424 13845 13870 W MessageQueue: Handler (Android.os.Handler) {9320712} sending message to a Handler on a dead thread
03-17 11:38:59.424 13845 13870 W MessageQueue: Java.lang.IllegalStateException: Handler (Android.os.Handler) {9320712} sending message to a Handler on a dead thread
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.MessageQueue.enqueueMessage(MessageQueue.Java:545)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.Handler.enqueueMessage(Handler.Java:662)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.Handler.sendMessageAtTime(Handler.Java:631)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.Handler.sendMessageDelayed(Handler.Java:601)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.Handler.post(Handler.Java:357)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.ResultReceiver$MyResultReceiver.send(ResultReceiver.Java:57)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at com.Android.internal.os.IResultReceiver$Stub.onTransact(IResultReceiver.Java:58)
03-17 11:38:59.424 13845 13870 W MessageQueue:  at Android.os.Binder.execTransact(Binder.Java:697)
03-17 11:38:59.436 13768 13850 W zygote  : Long monitor contention with owner firebase-iid-executor (13808) at void Java.lang.AbstractStringBuilder.ensureCapacityInternal(int)(AbstractStringBuilder.Java:124) waiters=0 in Java.util.TimeZone Java.util.TimeZone.getTimeZone(Java.lang.String) for 114ms
03-17 11:38:59.519 13768 13768 W ResourceType: Failure getting entry for 0x7f0c0112 (t=11 e=274) (error -75)
03-17 11:38:59.520 13768 13768 W ResourceType: Failure getting entry for 0x7f0c0113 (t=11 e=275) (error -75)
03-17 11:38:59.608  1571  1809 E         : Couldn't opendir /data/app/vmdl185214765.tmp: No such file or directory
03-17 11:38:59.608  1571  1809 E installd: Failed to delete /data/app/vmdl185214765.tmp: No such file or directory
03-17 11:38:59.695  1699  1719 W BroadcastQueue: Background execution not allowed: receiving Intent { act=Android.intent.action.PACKAGE_REMOVED dat=package:androidx.test.orchestrator flg=0x4000010 (has extras) } to com.google.Android.gms/.games.chimera.GamesSystemBroadcastReceiverProxy
03-17 11:38:59.702  1699  1719 W BroadcastQueue: Background execution not allowed: receiving Intent { act=Android.intent.action.PACKAGE_REMOVED dat=package:androidx.test.orchestrator flg=0x4000010 (has extras) } to com.google.Android.gms/.photos.autobackup.PhotosAppUninstalledReceiver
...

Mes dépendances de test:

    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-web:3.2.0'
    androidTestImplementation ('androidx.test.espresso:espresso-contrib:3.2.0') {
        exclude module: 'support-compat'
    }
    androidTestImplementation 'androidx.test.espresso:espresso-intents:3.2.0'
    androidTestImplementation 'androidx.test:core:1.2.0'
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestImplementation 'androidx.test:rules:1.2.0'
    androidTestUtil 'androidx.test:orchestrator:1.2.0'
    androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0'

J'ai trouvé quelques références à la fois "Le cadre de test s'est arrêté de manière inattendue" et "Les transactions sortantes de ce processus doivent être FLAG_ONEWAY" pour désactiver l'exécution instantanée dans Android Studio, mais depuis 3.5, il n'y a pas d'exécution instantanée , il est renommé Appliquer les modifications de code et je ne vois aucune option pour le désactiver.

Des idées sur la façon de procéder?

pls aider.

5
Daniel Dudek

Comme l'a mentionné Victor Carbalho, il s'agit d'un bogue dans Android Studio 3.6.1 https://stackoverflow.com/a/60727631/2353939

Je viens de désactiver l'orchestrateur pour le moment.

testOptions {
//     execution 'ANDROIDX_TEST_ORCHESTRATOR'
}

dependencies {
//    androidTestUtil 'androidx.test:orchestrator:1.2.0'
}
0
Aung Thiha