如何查看 Android Orchestrator 日志?
How to see the Android Orchestrator log?
我的套件中有一个失败的测试,现在我正在使用 Android Orchestrator,但我得到的只是这条消息:
Test instrumentation process crashed. Check
com.something.something_detail.SomeActivityTest#testAddSucceeds_activityIsFinished.txt
for details
我不知道如何访问该文件。有帮助吗?
您可以在 /data/data/android.support.test.orchestrator/files/
下的设备上找到它们。
要通过 ADB 将它们从设备上移除(需要启用调试并且有根设备或模拟器,这样您就拥有了根):
adb root
adb pull /data/data/android.support.test.orchestrator/files/
非root用户,AndroidX用户可以使用:
adb shell run-as androidx.test.orchestrator cat /data/user_de/0/androidx.test.orchestrator/files/com.pkg.name#testName.txt
对于仍然偶然发现此问题的任何人, Stack Overflow 的回答很有帮助。从模拟器中提取文件我是 运行 需要 运行 adb 首先作为 root。
adb root
然后
adb pull /data/data/android.support.test.orchestrator/files/
我的结果与围绕 SO 浮动的其他答案略有不同。
使用 Android Studio IDE
似乎股票模拟器图像基本上默认是 root, 除了 支持 Google Play 商店的图像。因此,请尝试 运行 在普通模拟器上进行失败的测试,在出现错误后,我已经能够通过 Android Studio 的 设备文件资源管理器 [=41= 找到 txt 文件] 工具。
打开工具 window 并浏览至 /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)
想法
不幸的是,如果您希望在 .txt 文件中获得堆栈跟踪或有用的东西,您可能会非常失望。我在我的经验中发现的是这样的:
INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
这当然对调试毫无用处。 :(
我也不确定实际设备的文件位置是否不同,因为所有其他答案都说文件位于 /data/data/...
而不是我发现的 /data/user_de/...
对于模拟器。
对于使用 AndroidX Test Orchestrator 的任何人,路径将更改为
adb pull /data/data/androidx.test.orchestrator/files/
但是,这个命令也找到了 0 个文件,所以我不得不使用
adb pull /data/user_de/0/androidx.test.orchestrator/
我遇到了同样的错误,当我检查设备上的 txt 文件时,我没有找到有意义的日志。然后,我在我的 Android Studio 中更改了 "Build Variant",设置开始工作。
在我的例子中,文件没有用,因为它只有
INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
从好的方面来说,这告诉我我的测试应用程序崩溃了。
查看 logcat 显示了关于崩溃原因的堆栈跟踪。
你需要有 root 设备才能实现这一点,所以创建没有 google 播放服务的系统模拟器(它们默认是 root 的)。在具有此类系统的模拟器中,您将在路径中找到 txt 文件:
data/user_de/0/android.test.orchestrator/files
但我也没有在那里找到任何有用的信息。
对我来说,运行在模拟器上使用 Android Test Orchestrator 进行仪器测试总是导致神秘的“测试仪器进程崩溃”故障。我改为使用 64 位模拟器,现在测试 运行。
https://github.com/android/android-test/issues/352
我的套件中有一个失败的测试,现在我正在使用 Android Orchestrator,但我得到的只是这条消息:
Test instrumentation process crashed. Check com.something.something_detail.SomeActivityTest#testAddSucceeds_activityIsFinished.txt for details
我不知道如何访问该文件。有帮助吗?
您可以在 /data/data/android.support.test.orchestrator/files/
下的设备上找到它们。
要通过 ADB 将它们从设备上移除(需要启用调试并且有根设备或模拟器,这样您就拥有了根):
adb root
adb pull /data/data/android.support.test.orchestrator/files/
非root用户,AndroidX用户可以使用:
adb shell run-as androidx.test.orchestrator cat /data/user_de/0/androidx.test.orchestrator/files/com.pkg.name#testName.txt
对于仍然偶然发现此问题的任何人,
adb root
然后
adb pull /data/data/android.support.test.orchestrator/files/
我的结果与围绕 SO 浮动的其他答案略有不同。
使用 Android Studio IDE
似乎股票模拟器图像基本上默认是 root, 除了 支持 Google Play 商店的图像。因此,请尝试 运行 在普通模拟器上进行失败的测试,在出现错误后,我已经能够通过 Android Studio 的 设备文件资源管理器 [=41= 找到 txt 文件] 工具。
打开工具 window 并浏览至 /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)
想法
不幸的是,如果您希望在 .txt 文件中获得堆栈跟踪或有用的东西,您可能会非常失望。我在我的经验中发现的是这样的:
INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
这当然对调试毫无用处。 :(
我也不确定实际设备的文件位置是否不同,因为所有其他答案都说文件位于 /data/data/...
而不是我发现的 /data/user_de/...
对于模拟器。
对于使用 AndroidX Test Orchestrator 的任何人,路径将更改为
adb pull /data/data/androidx.test.orchestrator/files/
但是,这个命令也找到了 0 个文件,所以我不得不使用
adb pull /data/user_de/0/androidx.test.orchestrator/
我遇到了同样的错误,当我检查设备上的 txt 文件时,我没有找到有意义的日志。然后,我在我的 Android Studio 中更改了 "Build Variant",设置开始工作。
在我的例子中,文件没有用,因为它只有
INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
从好的方面来说,这告诉我我的测试应用程序崩溃了。 查看 logcat 显示了关于崩溃原因的堆栈跟踪。
你需要有 root 设备才能实现这一点,所以创建没有 google 播放服务的系统模拟器(它们默认是 root 的)。在具有此类系统的模拟器中,您将在路径中找到 txt 文件:
data/user_de/0/android.test.orchestrator/files
但我也没有在那里找到任何有用的信息。
对我来说,运行在模拟器上使用 Android Test Orchestrator 进行仪器测试总是导致神秘的“测试仪器进程崩溃”故障。我改为使用 64 位模拟器,现在测试 运行。 https://github.com/android/android-test/issues/352