Android Studio Instrumentation 测试构建变体
Posted
技术标签:
【中文标题】Android Studio Instrumentation 测试构建变体【英文标题】:Android Studio Instrumentation testing build variant 【发布时间】:2015-09-09 16:35:53 【问题描述】:所以我正在尝试使用自定义构建变体模拟来编写仪器测试。在这个构建变体中,我模拟了我的类和服务器。当我自己尝试使用模拟构建时,它工作正常,但我似乎无法使用我的模拟构建进行测试。这是我在 android Studio 中的配置。
我在运行测试时遇到了一些问题,因此我尝试卸载我的应用程序的所有版本,但我的模拟版本除外,但我不断收到此错误:
测试运行开始测试运行失败:找不到检测目标包:com.teamtreehouse.review.debug
但是,当我尝试针对调试构建变体运行测试时,它工作正常。它会安装我的调试版本,然后继续运行测试。
【问题讨论】:
【参考方案1】:您可以在不同的构建变体上进行测试;但只有一个。默认为调试。
看到这个: https://developer.android.com/studio/build/gradle-tips#change-the-test-build-type
目前只测试了一种构建类型。默认是调试 构建类型,但这可以重新配置:
android
...
testBuildType "staging"
【讨论】:
@sunlir 你是神拯救! 您可以动态测试不同的构建类型。看我的回答***.com/a/51719271/8034839【参考方案2】:或者,您可以按照以下方式配置您的 testBuildType,以便您可以决定运行 androidTest 的任何构建类型,从命令行指定相应的属性。
android
...
if (project.hasProperty('androidTestRelease'))
testBuildType 'release'
else if (project.hasProperty('androidTestStaging'))
testBuildType 'staging'
else
testBuildType 'debug'
...
从命令行
./gradlew connectedCheck -PandroidTestStaging
【讨论】:
【参考方案3】:AFAIK androidTest 仅适用于调试 buildType。
你可以使用构建风格来做你想做的事,一个很好的例子可以在这里找到:https://www.code-labs.io/codelabs/android-testing/#0
【讨论】:
以上是关于Android Studio Instrumentation 测试构建变体的主要内容,如果未能解决你的问题,请参考以下文章
如果未链接到 XCode 或 Instrument,应用程序会崩溃
PayPal Rest API 突然出现 Instrument_Declined 错误
Jacoco java.lang.instrument.IllegalClassFormatException:检测类时出错