机器人分子的Android gradle测试

机器人分子的Android gradle测试,android,unit-testing,robolectric,Android,Unit Testing,Robolectric,我正在使用AndroidStudio并与gradle一起构建 我想用Robolectirc测试我的应用程序,所以我在build.gradle中添加了以下内容 buildscript的依赖项部分: classpath'com.squareup.gradle:gradleandroid测试插件:0.9.+' 应用android测试插件: 应用插件:“android测试” 使用testCompile配置添加仅测试依赖项: testCompile 'junit:junit:4.10' testCompi

我正在使用AndroidStudio并与gradle一起构建

我想用Robolectirc测试我的应用程序,所以我在build.gradle中添加了以下内容

buildscript的依赖项部分:

classpath'com.squareup.gradle:gradleandroid测试插件:0.9.+'

应用android测试插件:

应用插件:“android测试”

使用testCompile配置添加仅测试依赖项:

testCompile 'junit:junit:4.10'
testCompile 'org.robolectric:robolectric:2.1.+'
testCompile 'com.squareup:fest-android:1.0.+'
这些是从

所以我添加了这些东西,我得到了gradle.build,如下所示

buildscript {
repositories {
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:0.6.+'

    classpath 'com.squareup.gradle:gradle-android-test-plugin:0.9.+'
}
}

apply plugin: 'android'
apply plugin: 'android-test'

repositories {
mavenCentral()
}

android {
compileSdkVersion 17
buildToolsVersion "17.0.0"

defaultConfig {
    minSdkVersion 9
    targetSdkVersion 17
}

signingConfigs {
    freeConfing {
        storeFile file("../../../workspace_android/keystore/pm.keystore");
        storePassword "password"
        keyAlias "key"
        keyPassword "password"
    }
    paidConfing {
        storeFile file("../../../workspace_android/keystore/pm.keystore");
        storePassword "password"
        keyAlias "key"
        keyPassword "password"
    }
}

productFlavors {
            paid {
                packageName "com.my.app"
                buildConfig "public final static boolean isFullVersion = true;"
                versionCode 2
                versionName "1.0.0"
                signingConfig signingConfigs.paidConfing
            }
            free {
                packageName "com.my.app"
                buildConfig "public final static boolean isFullVersion = false;"
                versionCode 2
                versionName "1.0.0"
            signingConfig signingConfigs.freeConfing
            }
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:+'

    testCompile 'junit:junit:4.10'
    testCompile 'org.robolectric:robolectric:2.1.+'
    testCompile 'com.squareup:fest-android:1.0.+'
}
我想测试我的应用程序,所以我输入了终端

gradle测试

但是,我有

无法确定任务“:MyApp:testFreeDebug”的依赖项。

产品风格名称已更改
testFreeDebug

gradle任务
也不起作用

在我没有添加测试内容之前,它工作得很好


如何使用robolectric测试我的应用程序

尝试使用插件的最新快照

buildscript {
    repositories {
        mavenCentral()
        maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
        classpath 'com.squareup.gradle:gradle-android-test-plugin:0.9.1-SNAPSHOT'
    }
}

尝试使用插件的最新快照

buildscript {
    repositories {
        mavenCentral()
        maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
        classpath 'com.squareup.gradle:gradle-android-test-plugin:0.9.1-SNAPSHOT'
    }
}

也可以使用
gradle check
代替
gradle test
也可以使用
gradle check
代替
gradle test