Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用库运行测试任务,但使用Junit的gradle中不存在包_Java_Android_Gradle_Dependencies_Junit4 - Fatal编程技术网

Java 使用库运行测试任务,但使用Junit的gradle中不存在包

Java 使用库运行测试任务,但使用Junit的gradle中不存在包,java,android,gradle,dependencies,junit4,Java,Android,Gradle,Dependencies,Junit4,我有一个名为integrationRealTest的gradle任务来运行特定的测试,项目结构如下: /mainProject |- /ttlib |- build.gradle |- (Java Sources and files) |- /app |- build.gradle |- (Java Sources and files) |- settings.gradle |- build.grad

我有一个名为integrationRealTest的gradle任务来运行特定的测试,项目结构如下:

/mainProject
    |- /ttlib
        |- build.gradle
        |- (Java Sources and files)
    |- /app
        |- build.gradle
        |- (Java Sources and files)
    |- settings.gradle
    |- build.gradle
应用程序的build.gradle如下所示:

apply plugin: 'com.android.application'
apply plugin: "jacoco"
repositories { jcenter() }
android {

    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.example.jackalkao.junit_cate_test"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
        }
    }
}
sourceSets {
    test {
        java.srcDir file('src/test/java')
    }
    integrationRealTest {
        java.srcDir file('src/test/java')
    }
}
configurations {
    integrationRealTestCompile.extendsFrom testCompile
}

jacoco {
    toolVersion = "0.7.6.201602180812"
    reportsDir = file("$buildDir/customJacocoReportDir")
}

task integrationRealTest(type: Test ) {
    println 'start integration test'
    testClassesDir = sourceSets.integrationRealTest.output.classesDir
    classpath = sourceSets.integrationRealTest.runtimeClasspath
    include '**/PerformanceTestSuite.class'
    jacoco {
        destinationFile = file("$buildDir/jacoco/integrationRealTest.exec")
        classDumpFile = file("$buildDir/classes/integrationRealTest")
    }
    dependencies {
        testCompile project(":ttlib")
    }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(":ttlib")
    testCompile 'junit:junit:4.12'
    testCompile project(':ttlib')
    integrationRealTestCompile project(':ttlib')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
    compile project(':ttlib')


}
apply plugin: 'com.android.library'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {

        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {

        }
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
    compile 'com.android.support:design:25.1.0'
    testCompile 'junit:junit:4.12'
}
ttlib build.gradle如下所示:

apply plugin: 'com.android.application'
apply plugin: "jacoco"
repositories { jcenter() }
android {

    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.example.jackalkao.junit_cate_test"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
        }
    }
}
sourceSets {
    test {
        java.srcDir file('src/test/java')
    }
    integrationRealTest {
        java.srcDir file('src/test/java')
    }
}
configurations {
    integrationRealTestCompile.extendsFrom testCompile
}

jacoco {
    toolVersion = "0.7.6.201602180812"
    reportsDir = file("$buildDir/customJacocoReportDir")
}

task integrationRealTest(type: Test ) {
    println 'start integration test'
    testClassesDir = sourceSets.integrationRealTest.output.classesDir
    classpath = sourceSets.integrationRealTest.runtimeClasspath
    include '**/PerformanceTestSuite.class'
    jacoco {
        destinationFile = file("$buildDir/jacoco/integrationRealTest.exec")
        classDumpFile = file("$buildDir/classes/integrationRealTest")
    }
    dependencies {
        testCompile project(":ttlib")
    }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(":ttlib")
    testCompile 'junit:junit:4.12'
    testCompile project(':ttlib')
    integrationRealTestCompile project(':ttlib')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
    compile project(':ttlib')


}
apply plugin: 'com.android.library'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {

        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {

        }
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
    compile 'com.android.support:design:25.1.0'
    testCompile 'junit:junit:4.12'
}
我也有一些设置

include ':app', ':ttlib'
我在ttlib(库)包中有一个类“Item”,包名是com.example.jackalkao.tlib,我想在应用程序中进行集成/单元测试, 我在命令行上运行了“$gradle integrationRealTest”,我得到了错误:

/home//Junit-cate-test/app/src/test/java/com/example/junit_cate_test/ClassA.java:4: error: package com.example.jackalkao.tlib does not exist
import com.example.jackalkao.tlib.Item;
                                 ^
/home//Junit-cate-test/app/src/test/java/com/example/junit_cate_test/ClassA.java:27: error: cannot find symbol
        Item item = new Item();
        ^
  symbol:   class Item
  location: class ClassA
/home/jackalkao/Junit-cate-test/app/src/test/java/com/example/junit_cate_test/ClassA.java:27: error: cannot find symbol
        Item item = new Item();
                        ^
  symbol:   class Item
  location: class ClassA
3 errors
:app:compileIntegrationRealTestJava FAILED
我确信它能够使用Android Studio IDE的按钮运行此测试,而且我还可以执行“$gradle test”定义任务来运行它。我如何修复此编译错误并运行integration/unit bu task test?

可能是相同的问题

对于上述问题帮助中的用户,请使用更新的Gradle包装器:
4.0-milestone-2
,但不适用于我

For me帮助在模块中使用而不是新的
实现
(已弃用的
编译
api