我目前正在开发一个Android应用程序,最近从Eclipse切换到Android
Studio(这不是我的想法;))。但是我想配置一个詹金斯服务器来定期运行JUnit测试和其他测试。为此,我尝试配置gradle
buidlfile。这是我的设置:
目录结构:
-app
-src
-main
-test
build.gradle文件:(位于“ src / build.gradle”中)
apply plugin: 'android'
sourceSets {
unitTest {
java.srcDir file('src/test/java/[appName]/app')
}
}
android {
compileSdkVersion 19
buildToolsVersion '19.0.3'
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
sourceSets {
instrumentTest.setRoot('src/test')
}
}
task unitTest(type:Test) {
testClassesDir = sourceSets.unitTest.output.classesDir
classpath = sourceSets.unitTest.runtimeClasspath
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v13:+'
compile 'com.android.support:appcompat-v7:+'
compile 'com.android.support:support-v4:+'
unitTest 'junit:junit:4.10'
}
测试类MainActivityTest.java
package [appName].app;
import android.test.InstrumentationTestCase;
import junit.framework.Assert;
public class MainActivityTest extends InstrumentationTestCase{
public void testMain(){
Assert.assertEquals(1,2);
}
}
最重要的是错误消息:
Error:(41, 0) Build script error, unsupported Gradle DSL method found: 'unitTest()'!
这是我第一次使用gradle和Android
Studio,但我真的不知道我在做什么错。在互联网上,我只发现有类似问题的人,但没有人找到对我有用的解决方案。如果您能指出正确的方向,我将非常高兴!
问候