Android Studio 3.6 Тестовый фреймворк неожиданно завершился, Cra sh от оркестровщика - PullRequest
4 голосов
/ 17 марта 2020

Мне тяжело запускать инструментальные тесты в Android Studio.

Когда я пытаюсь запустить несколько тестов, появляется "Среда тестирования неожиданно завершает работу":

Android studio test framework quit unexpectedly screenshot

... и все тесты продолжают выполняться в эмуляторе, но Android Studio не возвращает результаты.

Logcat показывает это:

...
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
...

Мои тестовые зависимости:

    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'

Я обнаружил несколько ссылок как "Тестовая среда неожиданно завершает работу", так и "Исходящие транзакции из этого процесса должны быть FLAG_ONEWAY" для отключения мгновенного доступа. запустить в Android Studio, но, поскольку в 3.5 нет мгновенного запуска, он переименован в «Применить изменения кода», и я не вижу вариантов его отключения.

Есть идеи, как поступить с этим?

помогите.

Ответы [ 3 ]

2 голосов
/ 17 марта 2020

Похоже, это ошибка AS 3.6.

Согласно этой теме в Reddit: https://www.reddit.com/r/androiddev/comments/f9xsz2/anyone_else_having_issues_running_androidtest/

Это будет исправлено в 3.6.2.

1 голос
/ 18 марта 2020

Витор Карвалью прав, что это проблема Android Studio v3.6.1. Я решил ее, удалив Android Studio, а затем вернувшись к версии 3.5.3.

Чтобы удалить Android Studio, следуйте указаниям этого ответа , что по сути сводится к:

Выполните эти команды в терминале (исключая строки с хэштегами - это комментарии):

# Deletes the Android Studio application
# Note that this may be different depending on what you named the application as, or whether you downloaded the preview version
rm -Rf /Applications/Android\ Studio.app
# Delete All Android Studio related preferences
# The asterisk here should target all folders/files beginning with the string before it
rm -Rf ~/Library/Preferences/AndroidStudio*
# Deletes the Android Studio's plist file
rm -Rf ~/Library/Preferences/com.google.android.*
# Deletes the Android Emulator's plist file
rm -Rf ~/Library/Preferences/com.android.*
# Deletes mainly plugins (or at least according to what mine (Edric) contains)
rm -Rf ~/Library/Application\ Support/AndroidStudio*
# Deletes all logs that Android Studio outputs
rm -Rf ~/Library/Logs/AndroidStudio*
# Deletes Android Studio's caches
rm -Rf ~/Library/Caches/AndroidStudio*
# Deletes older versions of Android Studio
rm -Rf ~/.AndroidStudio*

Затем установите предыдущую версию Android Studio из Android Студийный архив .

0 голосов
/ 10 апреля 2020

Как отметил Виктор Карбальо, это ошибка в Android Studio 3.6.1 { ссылка }

Я просто отключил оркестратор в данный момент.

testOptions {
//     execution 'ANDROIDX_TEST_ORCHESTRATOR'
}

dependencies {
//    androidTestUtil 'androidx.test:orchestrator:1.2.0'
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...