如何在Android测试中显示日志文件System.out.println()?

Hes*_*sam 6 logging android gradlew build.gradle android-gradle-plugin

我做了很多搜索,但遗憾的是无法让它发挥作用.

根据我的搜索,我发现我需要在build.gradle文件中添加以下代码.然而,Gradle似乎并不认识它并且总是说Geadle DSL method not found: test()

test  {
    testLogging.showStandardStreams = true
    testLogging.events("passed", "skipped", "failed", "standardOut", "standardError")

    afterTest { desc, result ->
        println "Executing test ${desc.name} [${desc.className}] with result: ${result.resultType}"
    }
}
Run Code Online (Sandbox Code Playgroud)

更新

如果你创建一个测试项目,并将所有测试用例内部的,而不是我可以证实上面的代码或比下面的代码更好地工作正常src/test/java,并src/androidTest/java在主体工程.这是因为您可以java在build.gradle文件中应用插件.但是,在任何com.android.*已定义的build.gradle文件中都不可能使用以下代码.由于这两个库不兼容:(

apply plugin: 'java'
evaluationDependsOn(':YOUR-LIB')

test {
    testLogging.showStandardStreams = true

    testLogging {
        events "passed", "skipped", "failed", "standardOut", "standardError"
        exceptionFormat = 'full'
    }

    afterTest { desc, result ->
        println "Executing test ${desc.name} [${desc.className}] with result: ${result.resultType}"
    }

    forkEvery = 5
    maxParallelForks = java.lang.Runtime.runtime.availableProcessors() / 2
}

tasks.withType(Test) {
    // Need Gradle to ignore classes that are inner class of Test classes but not actually Tests
    scanForTestClasses = false
    include "**/*Test.class"
}
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是有没有人发明任何方式在android插件下打印日志?