首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Gradle:如何在控制台显示androidTest结果?

Gradle:如何在控制台显示androidTest结果?
EN

Stack Overflow用户
提问于 2016-04-28 20:26:19
回答 2查看 3.6K关注 0票数 27

正如在其他线程中解释的那样,Gradle可以配置为将测试结果记录到控制台中:

基本上,这可以通过以下任务进行设置:

代码语言:javascript
复制
tasks.withType(Test) {
    testLogging {
       // Custom configuration
    }
}

这对于单元测试很有效,看起来有点像这样:

代码语言:javascript
复制
...
:app:assembleDebugUnitTest
:app:testDebugUnitTest
:app:processDebugResources

com.example.StringsTest > formatValue PASSED
com.example.StringsTest > formatValueWithDecimals FAILED

1 test completed, 1 failed

此外,单元测试我还使用以下命令运行集成测试

代码语言:javascript
复制
$ ./gradlew connectedAndroidTest

当我查看控制台中的输出时,我发现我错过了为单元测试编写的单个测试结果。如何为检测测试配置测试日志记录?

EN

回答 2

Stack Overflow用户

发布于 2016-06-13 09:59:44

连接的测试将输出和事件记录到logcat,因为它在设备/仿真器上运行。测试事件记录在TestRunner标签下。

我使用以下脚本在后台启动adb logcat,在执行测试时记录TestRunner事件,然后终止logcat进程。

代码语言:javascript
复制
adb logcat *:S TestRunner:V & LOGCAT_PID=$! ; \
./gradlew :app:cAT ; \
if [ -n "$LOGCAT_PID" ] ; then kill $LOGCAT_PID; fi

它会产生类似下面这样的结果:

代码语言:javascript
复制
[1] 90439
--------- beginning of system
--------- beginning of main
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
...
:app:packageDebugAndroidTest UP-TO-DATE
:app:assembleDebugAndroidTest UP-TO-DATE
> Building 96% > :app:connectedDebugAndroidTest06-13 09:25:04.259  5460  5474 I TestRunner: run started: 23 tests
06-13 09:25:04.267  5460  5474 I TestRunner: started: testHomeClick(io.github.hidroh.tldroid.CommandActivityTest)
06-13 09:25:06.899  5460  5474 I TestRunner: finished: testHomeClick(io.github.hidroh.tldroid.CommandActivityTest)
06-13 09:25:06.903  5460  5474 I TestRunner: started: testRenderNoContent(io.github.hidroh.tldroid.CommandActivityTest)
06-13 09:25:08.128  5460  5474 I TestRunner: finished: testRenderNoContent(io.github.hidroh.tldroid.CommandActivityTest)
06-13 09:25:08.130  5460  5474 I TestRunner: started: testStateRestoration(io.github.hidroh.tldroid.CommandActivityTest)
06-13 09:25:09.547  5460  5474 I TestRunner: finished: testStateRestoration(io.github.hidroh.tldroid.CommandActivityTest)
...
06-13 09:25:35.283  5460  5474 I TestRunner: run finished: 23 tests, 0 failed, 0 ignored
:app:connectedDebugAndroidTest
:app:createDebugAndroidTestCoverageReport
:app:connectedAndroidTest

BUILD SUCCESSFUL

Total time: 1 mins 7.485 secs
[1]+  Terminated: 15          adb logcat *:S TestRunner:V

当然,您可以调整logcat命令以使用您选择的记录器,例如颜色记录器,或者更改logcat filterspec以显示更多事件。

票数 11
EN

Stack Overflow用户

发布于 2017-12-06 18:58:00

最简单的版本就是使用:

信息。/gradlew connectedAndroidTest --

在终端/控制台窗口中记录它需要一点时间,但是它显示了所有漂亮的、彩色的和格式化的东西

像…一样

代码语言:javascript
复制
…ShowsIntroduction[SM-G950F - 7.0] SUCCESS 
…BackButtonReturnsToOnboardingScreen[SM-G950F - 7.0] SKIPPED

祝你好运&&玩得开心

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36914675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档