我在Android 2.2上运行的模拟器上运行Android CTS Android测试计划。
但是大多数测试用例都显示超时,错误显示com.android.ddmlib.ShellCommandUnresponsiveException。
有没有办法解决这个问题?
答案 0 :(得分:5)
将shell命令时间设置为5分钟(而不是5秒: - ))
diff --git a/tools/host/src/com/android/cts/TestDevice.java b/tools/host/src/com/android/cts/TestDevice.java
index 65ff969..b8578bc 100644
--- a/tools/host/src/com/android/cts/TestDevice.java
+++ b/tools/host/src/com/android/cts/TestDevice.java
@@ -18,6 +18,7 @@ package com.android.cts;
import com.android.ddmlib.Client;
import com.android.ddmlib.ClientData;
+import com.android.ddmlib.DdmPreferences;
import com.android.ddmlib.IDevice;
import com.android.ddmlib.IShellOutputReceiver;
import com.android.ddmlib.MultiLineReceiver;
@@ -143,6 +144,7 @@ public class TestDevice implements DeviceObserver {
mDeviceInfo = new DeviceParameterCollector();
mPackageActionTimer = new PackageActionTimer();
mObjectSync = new ObjectSync();
+ DdmPreferences.setTimeOut(300000);
}
答案 1 :(得分:0)
像我这样的新手有点注意事项:
make cts
cts.jar
以替换库存文件。这解决了CTS超时问题,因为一些adb命令需要超过20秒才能在我的MotoA953设备上返回(其中一个是am instrument -w -e bundle true android.tests.devicesetup/android.tests.getinfo.DeviceInfoInstrument
)。