我有一个项目,其中包含 1,000 多项测试,使用 Robolectric 运行良好。当我在“Make”指令期间转到“运行”->“所有测试”时切换到 Android Studio 1.1 后,Android Studio 调用 Gradle 的 assembleDebugTest 而不是 generateDebugTestSources ..在我的例子中,这使得构建系统开始 dexing 和打包测试APK 对我来说毫无用处,因为所有测试都是 JVM 测试。
我找到了这个 change这可能是造成它的原因:
- if (testCompileType == TestCompileType.ANDROID_TESTS) {
+ if (testCompileType != TestCompileType.NONE) {
String gradleTaskName = properties.ASSEMBLE_TEST_TASK_NAME;
if (StringUtil.isNotEmpty(gradleTaskName)) {
tasks.add(createBuildTask(gradlePath, gradleTaskName));
有没有办法让它在 Android Studio 上可配置? 1.0 版运行良好。
谢谢!
最佳答案
如果有人根据新的单元测试指南对解决方案感兴趣:
http://tools.android.com/tech-docs/unit-testing-support
您需要将测试 Artifact 更改为“单元测试”,如第 5 步所述。这样,当您运行所有测试时,AS 将调用新的 assembleDebugUnitTest
任务而不是 assembleDebugTest
.
关于android - 如何让 Android Studio 1.1 在 "Make"指令期间调用 generateDebugTestSources 而不是 assembleDebugTest?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28777705/