Gradle игнорирует testProguardFile при запуске инструментов AndroidAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Gradle игнорирует testProguardFile при запуске инструментов Android

Сообщение Anonymous »

Я пытаюсь запустить инструментальные тесты для типа сборки выпуск.
Мои настройки следующие:

Код: Выделить всё

Android Studio - 3.4.1
Android Gradle Plugin - 3.4.1
Gragle - 5.4.1
R8 - Enabled (default)
Соответствующий фрагмент build.gradle:

Код: Выделить всё

    testBuildType "release"

buildTypes {
release {
proguardFiles fileTree(dir: 'vendor', include: ['*.pro']).asList().toArray()
debuggable true
minifyEnabled true
shrinkResources true
signingConfig signingConfigs.release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
testProguardFile 'proguard-rules-test.pro'
testCoverageEnabled false
}
}
Содержимое proguard-rules-test.pro (для целей тестирования):

Код: Выделить всё

-keep public class ** { *; }
Запуск любого инструментария приводит к следующему исключению времени выполнения:

Код: Выделить всё

com.MYAPP.debug E/InstrumentationResultPrinter: Failed to mark test No Tests as finished after process crash
com.MYAPP.debug E/MonitoringInstr: Exception encountered by: Thread[main,5,main]. Dumping thread state to outputs and pining for the fjords.
java.lang.NoSuchMethodError: No virtual method setAppComponent(L/com/MYAPP/injection/AppComponent;)V in class L/com/MYAPP/data/common/MyApplication$Companion; or its super classes (declaration of 'com.MYAPP.data.common.MyApplication$Companion' appears in /data/app/com.MYAPP.debug-o3QrzyIOGC0Ko3XRS2fcxQ==/base.apk)
at com.MYAPP.base.TestMyApplication.h(TestMyApplication.kt:20)
at com.MYAPP.data.common.MyApplication.onCreate(MyApplication.kt:126)
(TestMyApplication расширяет MyApplication и вызывается AndroidJUnitRunner)

Перемещение строки -keep из proguard-rules-test.pro в основной файл правил Proguard позволяет запускать и проходить тесты без проблем.

Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/563 ... umentation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»