Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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 运行主要和特定口味的单元测试_Java_Android_Unit Testing_Android Gradle Plugin_Android Sourcesets - Fatal编程技术网

Java 运行主要和特定口味的单元测试

Java 运行主要和特定口味的单元测试,java,android,unit-testing,android-gradle-plugin,android-sourcesets,Java,Android,Unit Testing,Android Gradle Plugin,Android Sourcesets,我有5个风格映射到2个源文件夹,在主文件夹中编写了一些公共代码,b文件夹中有一些额外的bean,我已经为它们编写了单元测试,现在我想运行单元测试,就像主文件夹中的所有单元测试一样,运行一些为b应用编写的特定单元测试 1.我应该将B应用程序的特定于文件夹的单元测试放置在何处。我创建了一个文件夹测试,并将这些测试放在该文件夹中,然后添加 unitTest{ java.srcDir文件('src/b/test') } 在B应用程序的源集中,但这不起作用 2.我应该如何放置单元测试的映射,这些不是and

我有5个风格映射到2个源文件夹,在主文件夹中编写了一些公共代码,b文件夹中有一些额外的bean,我已经为它们编写了单元测试,现在我想运行单元测试,就像主文件夹中的所有单元测试一样,运行一些为b应用编写的特定单元测试

1.我应该将B应用程序的特定于文件夹的单元测试放置在何处。我创建了一个文件夹测试,并将这些测试放在该文件夹中,然后添加

unitTest{
java.srcDir文件('src/b/test')
}

在B应用程序的源集中,但这不起作用 2.我应该如何放置单元测试的映射,这些不是android测试,我已经很累了,但这些似乎是针对android测试的,而不是针对单元测试的

productFlavors {
        staging {
            applicationIdSuffix = ".test"
            resValue "string", "app_name", "A Test"
            //other keys
        }
        prod {
            resValue "string", "app_name", "A"
            //other keys
        }
        dev {
            applicationIdSuffix = ".dev"
            resValue "string", "app_name", "A Dev"
            //other keys
        }

        BStaging {
            applicationIdSuffix = ".b.test"
            resValue "string", "app_name", "B Test"
         //other keys
        }

        BProd {
            applicationIdSuffix = ".b"
            resValue "string", "app_name", "B"
      //other keys
        }
    }

sourceSets {
        prod {
            java.srcDirs = ['src/a/java']
            res.srcDirs = ['src/a/res']
            resources.srcDirs = ['src/a/java']
            manifest.srcFile 'src/a/AndroidManifest.xml'
        }
        dev {
            java.srcDirs = ['src/a/java']
            res.srcDirs = ['src/a/res']
            resources.srcDirs = ['src/a/java']
            manifest.srcFile 'src/a/AndroidManifest.xml'
        }
        staging {
            java.srcDirs = ['src/a/java']
            res.srcDirs = ['src/a/res']
            resources.srcDirs = ['src/a/java']
            manifest.srcFile 'src/a/AndroidManifest.xml'
        }
        BStaging {
            java.srcDirs = ['src/b/java']
            res.srcDirs = ['src/b/res']
            resources.srcDirs = ['src/b/java']
            manifest.srcFile 'src/b/AndroidManifest.xml'
        }
        BProd {
            java.srcDirs = ['src/b/java']
            res.srcDirs = ['src/b/res']
            resources.srcDirs = ['src/b/java']
            manifest.srcFile 'src/b/AndroidManifest.xml'

        }
    }

如果您的产品风格构建类型是这样创建的

buildTypes {
        release {
            ...
        }

        debug {
            debuggable true
        }
    }

    productFlavors {
        develop {

        }

        production {

        }
    }
您可以在studio终端中使用此命令运行基于味道的测试。

  • 对于开发味道和调试构建:/gradlew testdevelopdebuguunittest
  • 对于开发风味和发布构建:/gradlew TestDevelopPreLeaseUnitTest


因此该模式类似于testUnitTest

嘿,伙计,我没有使用源代码集,但我能够使用该命令模式运行基于味道的测试。(不带引号)“./gradlew testUnitTest”。