gpt4 book ai didi

启用 proguard 的 Android 单元测试

转载 作者:IT老高 更新时间:2023-10-28 22:20:31 26 4
gpt4 key购买 nike

我有一个问题,即 Proguard 删除了我的调试 APK 的方法(由于方法 dex 文件限制,我需要在调试时运行 proguard),即使它们在测试 apk 中使用。例如。我在单元测试中使用 GSON addProeprty 方法,但不在 App apk 中。此方法被剥离并导致测试失败。但是由于 dex 文件的限制,我不想将 proguard 配置为只保留所有 GSOn,也不想单独列出所有方法。有没有办法告诉 rpguard 将单元测试视为源代码入口点?

最佳答案

这就是我所做的。

添加自定义的 proguard 规则文件。

/project/app/proguard-test-rules.pro

# Proguard rules that are applied to your test apk/code.
-ignorewarnings

-keepattributes *Annotation*

-dontnote junit.framework.**
-dontnote junit.runner.**

-dontwarn android.test.**
-dontwarn android.support.test.**
-dontwarn org.junit.**
-dontwarn org.hamcrest.**
-dontwarn com.squareup.javawriter.JavaWriter
# Uncomment this if you use Mockito
#-dontwarn org.mockito.**

将以下内容添加到您的应用程序的 build.gradle 中。测试时使用proguard文件。

/project/app/build.gradle

android {
debug {
minifyEnabled true
testProguardFile 'proguard-test-rules.pro'
}
}

关于启用 proguard 的 Android 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26482119/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com