如何使用Gradle为Android构建发布测试apk?

时间:2016-09-26 13:03:07

标签: android testing gradle

我知道,使用Gradle命令assembleAndroidTest我可以构建一个测试APK。 但我可以使用此测试APK仅用于我的应用程序的调试版本,对吧?如果我在发布版本中使用它,我会收到"[SDR.handleImages] Unable to find test for com.xxx.xxx (packagename)"

之类的错误消息

如何使用Gradle在发布模式下构建测试APK?

4 个答案:

答案 0 :(得分:2)

要首先从gradle构建发布测试apk,您需要在build.gradle文件中添加followin test config:

android {
    ..
    ..
    buildTypes {
      release {
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        testProguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-test-rules.pro'
        signingConfig signingConfigs.release
      }
    }
    testBuildType "release"
}

在此之后,您将开始看到assembleReleaseAndroidTest命令。您可以通过它在发布版本上运行测试。

在此过程中,您可能还需要为测试程序规则创建proguard-test-rules.pro文件

答案 1 :(得分:1)

将此行添加到您的defaultConfig

android {
    defaultConfig {
        ...
        testBuildType System.getProperty('testBuildType', 'debug')
     }
}

现在您可以运行以下命令来获取测试apk的发行版

./gradlew assembleAndroidTest -DtestBuildType=release

答案 2 :(得分:0)

你也可以试试

if (project.hasProperty('androidTestRelease')) {
        testBuildType 'release'
    }else {
        testBuildType 'debug'
    }

并在发布版本中运行测试只需添加

-PandroidTest

到你的命令

答案 3 :(得分:-2)

您可以创建一个Flavor来实现这一目标。