使用gradle构建的Android项目中JUnit测试的问题

使用gradle构建的Android项目中JUnit测试的问题,gradle,android-studio,Gradle,Android Studio,我目前正试图让我在Android Studio中的测试正常工作(正常的JUnit测试)。 我在两天前的另一个帖子中问,这是链接: 我问了一个新问题,因为我现在还有其他问题,那就是:当我尝试运行测试时,它找不到源文件 这是我第一次使用gradle,所以很有可能我正在做一个非常愚蠢的失败,这很容易被发现;) 感谢您的帮助=) 文件夹结构: -应用程序 -src -主要 -雄激素试验 -爪哇 (第一个问题是:androidTest文件夹在那里,但它没有被识别为源文件夹。这是至关重要的!) build

我目前正试图让我在Android Studio中的测试正常工作(正常的JUnit测试)。 我在两天前的另一个帖子中问,这是链接:

我问了一个新问题,因为我现在还有其他问题,那就是:当我尝试运行测试时,它找不到源文件

这是我第一次使用gradle,所以很有可能我正在做一个非常愚蠢的失败,这很容易被发现;)

感谢您的帮助=)

文件夹结构:

-应用程序

-src -主要 -雄激素试验 -爪哇

(第一个问题是:androidTest文件夹在那里,但它没有被识别为源文件夹。这是至关重要的!)

build.gradle文件(位于app/build.gradle中)

build.gradle文件(位于src/build.gradle中)

现在在控制台上运行“gradlew.bat unitTestsss--info”时,我得到:

:unitTestsss                 
Skipping task ':unitTestsss' as it has no source files.
:unitTestsss UP-TO-DATE    

我至少可以发现两个问题:
src/build.gradle
是构建脚本的错误位置(正如我在前面的问题中所说的)。所有相对路径都是相对于构建脚本位置的,这会导致路径,例如
src/src/androidTest/java
src/src/main/java
,等等
sourceSets.androidTest
在两个构建脚本中都有定义,这似乎不正确。所以源代码在app/src/androidTest/java中?否则这仍然是错误的。生成生成文件时可能出了问题。嗨,Peter。我现在在一个不同的位置创建了一个全新的项目,只是为了确保它不是由于配置错误造成的。1.)默认情况下创建src/build.gradle(但这次我没有碰它;))2.)我只添加了一个测试用例(在src/androidTest/java/test.packageName/MainActivityTest.java中,android Studio正确检测到并正确执行了测试用例(由于assertEquals(1,3);)这次,我只添加了源集,将我的任务和插件添加到app/build.gradle,并出现以下错误消息:
文件或目录'C:\Users\mariu\000\Desktop\MyApplication3\build\classes\androidTest',找不到跳过任务:unitTestsss',因为它没有源文件。
我在build.gradle应用插件中添加了以下内容:“java”源集{androidTest{java.srcDir文件('src/androidTest/java')}}task unitTestsss(type:Test,dependsOn:assembly){description=“run unit tests”testClassesDir=project.sourceset.androidTest.output.classesDir classpath=project.sourceset.androidTest.runtimeClasspath}
apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.3'

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
        testPackageName "test[Appname]"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    sourceSets {
        androidTest {
            java.srcDirs = ['src/androidTest/java']
        }
        main { java.srcDirs = ['src/main/java', 'src/androidTest/java/'] }
    }
}

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:+'
}
:unitTestsss                 
Skipping task ':unitTestsss' as it has no source files.
:unitTestsss UP-TO-DATE