【发布时间】:2014-05-12 15:49:12
【问题描述】:
我正在使用 MonkeyRunner 在真实设备上进行 Android 自动化测试并运行通宵测试。在其中一项广泛的自动化测试中,我发现每当 MonkeyRunner 截取屏幕截图时,都会在设备内部系统上创建一个僵尸进程。当我运行adb shell ps 命令时,您可以在下面看到僵尸进程:
随着僵尸进程的增加,设备变得无响应并开始挂起。在 MonkeyRunner 中,截图是唯一的验证方式。因此,在运行需要数小时的大量测试时,此问题非常关键。
我还看到this 说
framebuffer_service 没有“等待”生成的 截屏过程完成。因此,子进程 成为僵尸进程。
并建议修改 adb 源代码本身。但是,我认为在不深入到源代码的情况下,肯定还有其他解决方案。
任何想法/建议如何解决这个问题?
【问题讨论】:
-
monkeyrunner 在运行长时间测试时的不可靠性是我开始 AndroidViewClient/culebra 的主要原因之一。试一试。
-
今天确实在考虑试一试 culebra。遇到这样一个简单但又很关键的问题,真是令人沮丧。
-
您能否更改开发机器端的代码以在设备上运行自定义的东西(代替或作为中介),等待孩子?
标签: android adb monkeyrunner zombie-process