невозможно ссылаться на классы модуля приложения в модуле динамических функций при выполнении модульных тестов - PullRequest
4 голосов
/ 07 мая 2019

Наш проект имеет модуль динамических функций с зависимостью от модуля приложения. Классы в модуле динамических функций зависят от модуля приложения.

У нас также есть модульные тесты в динамическом модуле, которые тестируют отдельные классы динамического модуля. Модульные тесты работают нормально при запуске через Android Studio. Получил ошибку при выполнении юнит-тестов с использованием gradlew.

Ниже приведена ошибка:

. / Gradlew: dynamic_feature1: testDebugUnitTest Получение следующей ошибки:

15:40:13.225 [DEBUG] [TestEventLogger]
15:40:13.225 [DEBUG] [TestEventLogger] com.example.dynamic_feature1.DynamicPresenterTest > testXyz FAILED
15:40:13.225 [DEBUG] [TestEventLogger]     java.lang.NoClassDefFoundError: com/example/dynamicfeature/AppBase
15:40:13.225 [DEBUG] [TestEventLogger]         at java.lang.ClassLoader.defineClass1(Native Method)
15:40:13.225 [DEBUG] [TestEventLogger]         at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
15:40:13.225 [DEBUG] [TestEventLogger]         at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)```

1 Ответ

1 голос
/ 07 мая 2019

Чтобы исправить проблему java.lang.NoClassDefFoundError: com/example/dynamicfeature/AppBase, попробуйте следующую команду:

./gradlew test

см. Android jUnit Test java.lang.NoClassDefFoundError: android / база данных / sqlite / SQLiteOpenHelper

...