如何为新的android单元测试结构配置checkstyle

时间:2015-08-12 08:20:21

标签: android unit-testing android-gradle android-testing checkstyle

我一直在从谷歌样本中引用这个android testing template项目进行单元测试,如何使用新的单元测试目录结构设置checkstyle规则。

我使用以下gradle checkstyle脚本

apply plugin: 'checkstyle'

checkstyle {
    toolVersion = "6.7"
    configFile rootProject.file('config/checkstyle/checkstyle.xml')
    showViolations true
}

android.applicationVariants.all { variant ->
    def name = variant.name

    def checkstyle = project.tasks.create "checkstyle${name.capitalize()}", Checkstyle
    checkstyle.dependsOn variant.javaCompile
    checkstyle.source variant.javaCompile.source
    checkstyle.classpath = project.fileTree(variant.javaCompile.destinationDir)
    checkstyle.exclude('**/Manifest.java')
    checkstyle.exclude('**/BuildConfig.java')
    checkstyle.exclude('**/R.java')
    project.tasks.getByName("check").dependsOn checkstyle
}

这是我的hack包含单元测试目录,当然src应该由flavor命名标准动态选择。关于如何获取变量src目录路径的任何建议?

android.applicationVariants.all { variant ->
    def name = variant.name
    def checkstyle = project.tasks.create "checkstyle${name.capitalize()}", Checkstyle
    checkstyle.dependsOn variant.javaCompile
    checkstyle.source variant.javaCompile.source
    checkstyle.source project.files("src/test${name.capitalize()}")
    checkstyle.classpath = project.fileTree(variant.javaCompile.destinationDir) + project
            .fileTree(dir: "src/test${name.capitalize()}")
    checkstyle.exclude('**/Manifest.java')
    checkstyle.exclude('**/BuildConfig.java')
    checkstyle.exclude('**/R.java')
    project.tasks.getByName("check").dependsOn checkstyle
}

1 个答案:

答案 0 :(得分:0)

尝试checkstyle.source 'src'。这对我有用。