如何查看Android Orchestrator日志?

Lea*_*ira 13 android integration-testing android-espresso

我的套件中有一个失败的测试,现在我正在使用Android Orchestrator,但我得到的是这条消息:

测试仪器过程崩溃了.检查com.something.something_detail.SomeActivityTest#testAddSucceeds_activityIsFinished.txt了解详情

我不知道如何访问该文件.有帮助吗?

Tur*_*ole 14

你会在设备下找到它们/data/data/android.support.test.orchestrator/files/.

要通过ADB将它们从设备上移除(需要启用调试,并且需要root设备或模拟器才能拥有root权限):

adb root
adb pull /data/data/android.support.test.orchestrator/files/
Run Code Online (Sandbox Code Playgroud)

非root用户,AndroidX用户可以使用:

adb shell run-as androidx.test.orchestrator cat /data/user_de/0/androidx.test.orchestrator/files/com.pkg.name#testName.txt
Run Code Online (Sandbox Code Playgroud)

  • 对于那些不理解的人,你应该有一个root用户手机并使用adb来到达这个位置. (4认同)
  • 如果您希望改进此流程,请务必为此问题加注星标:https://issuetracker.google.com/issues/109655636 (3认同)

Ton*_*han 8

我的结果显示出与围绕SO浮动的其他答案略有不同.

使用Android Studio IDE

除了支持Google Play商店的图片,默认情况下,库存模拟器图片基本上都是root用户.因此,尝试在普通模拟器上运行失败的测试,在您收到错误后,我已经能够通过Android Studio的Device File Explorer工具找到txt文件.

打开工具窗口,浏览/data/user_de/0/android.support.test.orchestrator/files/并找到.txt文件.

从这里您可以打开文件或右键单击以下载它.无需任何终端adb root命令等

替代方法(命令行)

如果您坚持使用adb和命令行,那么您必须首先:

adb root
adb pull /data/user_de/0/android.support.test.orchestrator/files/ [directory to save to]
adb unroot (optional)
Run Code Online (Sandbox Code Playgroud)

思考

不幸的是,如果您希望堆栈跟踪或.txt文件中有用的东西,您可能会非常失望.我在经验中发现的所有东西都是这样的:

INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
Run Code Online (Sandbox Code Playgroud)

这当然对调试来说毫无用处.:(

我也不确定实际设备的文件位置是否不同,因为那里的所有其他答案都说文件位于,/data/data/...而不是/data/user_de/...我找到的模拟器.


Ade*_*mad 5

就我而言,该文件没有用,因为它只有

INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
Run Code Online (Sandbox Code Playgroud)

从好的方面来说,这告诉我我的测试应用程序崩溃了。查看 logcat 显示了有关崩溃原因的堆栈跟踪。