Тесты Android вылетают при попытке запуска

Вопрос или проблема

Я пытался запустить тест на своем MacBook Pro M1. Тест Espresso работает нормально на компьютере моего коллеги с такой же конфигурацией. SDK установлен на 34, и я использую Pixel 7 API 34 для тестирования. Изначально тест работал нормально, но сYesterday он начал вызывать сбои

вот журнал

> Task :qa-automation:connectedDebugAndroidTest
Запуск 0 тестов на Pixel_7_API_34(AVD) - 14

Завершено 0 тестов на Pixel_7_API_34(AVD) - 14

> Task :qa-automation:connectedDebugAndroidTest FAILED
Запуск тестов не удалось завершить. Нет результатов тестирования

FAILURE: 
Сборка завершилась с исключением.

* Что пошло не так:
Ошибка выполнения задачи ':qa-automation:connectedDebugAndroidTest'.

* Попробуйте:
Запустите с опцией --stacktrace, чтобы получить трассировку стека.
Запустите с опцией --info или --debug, чтобы получить больше вывода журнала.
Запустите с опцией --scan, чтобы получить полную информацию.

Получить дополнительную помощь можно по адресу 
https://help.gradle.org

В этой сборке использовались устаревшие функции Gradle, что делает ее несовместимой с Gradle 9.0.

Вы можете использовать '--warning-mode all', чтобы показать предупреждения об устаревании и определить, исходят ли они из ваших собственных скриптов или плагинов.

Для получения дополнительной информации обратитесь к https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings в документации Gradle.

BUILD FAILED
 за 12с

216 выполнимых задач: 9 выполнено, 207 актуально

Журнал логов устройства

.orchestrator/androidx.test.orchestrator.AndroidTestOrchestrator
2024-09-17 17:50:30.986 10630-10630 DEBUG                   pid-10630                            A  Cmdline: app_process / androidx.test.services.shellexecutor.ShellMain am instrument -w -r --no-window-animation -e clearPackageData true -e class veeva.vault.mobile.qaautomation.test.dashboard.DashboardTest#dashboardSortFilterTest -e additionalTestOutputDir /sdcard/Android/media/com.veeva.vault.mobile.debug/additional_test_output -e testTimeoutSeconds 31536000 -e targetInstrumentation veeva.vault.mobile.qaautomation.test/veeva.vault.mobile.qaautomation.testutil.QaAutomationRunner androidx.test.orchestrator/androidx.test.orchestrator.AndroidTestOrchestrator
  1. переустановить Android Studio
  2. клонировать новый репозиторий
  3. сбросить и отформатировать ноутбук
  4. проверил на ноутбуке моего коллеги, и он работает нормально

Ответ или решение

Для решения проблемы с падением тестов Android на вашем MacBook Pro M1, вы можете выполнить следующие шаги:

  1. Проверьте конфигурацию вашего окружения:

    • Убедитесь, что вы используете ту же версию Android Studio и Gradle, что и ваш коллега.
    • Попробуйте обновить плагины и библиотеки до последних версий, совместимых с SDK 34.
  2. Очистите кэш проекта:

    • Выполните команду ./gradlew clean в корневой директории вашего проекта. Это очистит кэш и временные файлы, которые могут вызывать проблемы.
  3. Проверьте настройки эмулятора:

    • Убедитесь, что ваш эмулятор Pixel 7 API 34 правильно настроен и работает. Возможно, стоит удалить и заново создать AVD (Android Virtual Device).
    • Проверьте, достаточно ли ресурсов выделено для эмулятора (например, памяти и процессорного времени).
  4. Запуск тестов с дополнительными логами:

    • Запустите тесты с параметрами --info и --stacktrace для получения дополнительной информации об ошибках. Это может помочь понять, в чем именно заключается проблема.
      ./gradlew connectedDebugAndroidTest --stacktrace --info
  5. Депрецированные функции Gradle:

    • Обратите внимание на предупреждения о депрекации в логах. Вам следует обновить все скрипты и плагины Gradle, чтобы устранить проблемы совместимости с Gradle 9.0.
  6. Проверьте целостность кода:

    • Сравните код и конфигурацию с рабочей версией на вашем коллегином ноутбуке. В некоторых случаях ошибка может быть связана с изменениями в коде, которые не были должным образом протестированы.
  7. Логи устройства:

    • Проверьте логи Logcat более внимательно, чтобы понять, не исключаются ли другие возможные ошибки или исключения, которые могут указывать на проблему, связанную с конкретными тестами или компонентами вашего приложения.
  8. Тестирование на реальном устройстве:
    • Если у вас есть возможность, попробуйте запустить тесты на реальном устройстве вместо эмулятора. Это может помочь определить, является ли проблема связанной с эмуляцией.

Если после выполнения всех этих шагов проблема сохраняется, пожалуйста, опишите подробно любые новые ошибки или изменения в логах, чтобы можно было предложить дальнейшие шаги.

Оцените материал
Добавить комментарий

Капча загружается...