如何在Android单元测试中打开控制台输出?
有什么方法可以打开控制台输出中的测试日志记录吗?如何在Android单元测试中打开控制台输出?
我知道我们可以查看HTML文件中生成的测试结果并检查标准输出,但是我发现它有点不方便。
我知道,有一种方法与标准的Java插件来做到这一点:
test {
testLogging {
events "passed", "skipped", "failed", "standardOut", "standardError"
}
}
但是在Android项目中使用它会导致一个错误:
Could not find method test()
应用的Java插件是不能接受的,当然,因为它与Android插件不兼容。
android {
...
testOptions {
unitTests.all {
// All the usual Gradle options.
testLogging {
events "passed", "skipped", "failed", "standardOut", "standardError"
outputs.upToDateWhen {false}
showStandardStreams = true
}
}
}
}
就我而言,我跟着这个document并添加testLogging
选项如上。这应该打印出在src/test
文件夹下写入的单元测试的日志,但不是src/androidTest
。在回答这个问题时,我使用了Android Studio 2.0预览和gradle 2.8。命令是./gradlew test
和./gradlew test --continue
,其中运行在iTerm 2中。
为了在'src/androidTest'下运行测试,我右键单击包并使用Android Studio选择'运行'测试'com.example ...'。 – ninjahoahong 2015-12-15 21:10:47
谢谢!它的工作方式与预期一致! – scana 2015-12-16 19:01:01
@scana尼斯,它帮助。 – ninjahoahong 2015-12-16 20:15:14
这应该这样做
android {
...
testOptions.unitTests.all {
testLogging {
events 'passed', 'skipped', 'failed', 'standardOut', 'standardError'
}
}
}
来源:https://groups.google.com/forum/#!topic/adt-dev/LwZiKTnj8Bc
唉,不适合我。 Gradle 2.6。 – 2015-08-31 19:01:40
这实际上对我有用。非常感谢! – 2016-09-24 01:17:43
比@ ninjahoahong的更漂亮的解决方案(感谢Tricky Android blog)。
毗邻码到您的项目级别build.gradle
添加到allprojects
的身体:
不适用于我。 – 2016-09-24 01:06:12
你说的是哪台?所有日志都来自设备。 'Logcat'工具提取所有日志。 – eleven 2015-03-03 12:46:42
对不起,也许我没有足够清楚地表达自己。我的意思是在JVM上执行的Android单元测试,从简单的终端通过gradle包装器开始(因此logcat无问题) – scana 2015-03-03 12:58:25