【问题标题】:Android UI testing: "adb shell uiautomator" throws error, "uiautomator" in "adb shell" worksAndroid UI 测试:“adb shell uiautomator”抛出错误,“adb shell”中的“uiautomator”工作
【发布时间】:2014-08-11 05:35:36
【问题描述】:

我想在 Windows 上仅使用命令行工具编译和运行 Android UI 黑盒测试。我写了一个UiAutomatorTestCase,构建它,然后上传到/data/local/tmp/。我验证jar 文件已复制到后一个目录中。

如果我输入

adb shell

然后输入

uiautomator runtest MyTest.jar –c com.example.MyTest 

在 adb shell 提示符下,测试成功运行。到目前为止一切顺利。

问题是如果我结合这两个步骤并输入

adb shell uiautomator runtest MyTest.jar –c com.example.MyTest

然后我收到以下错误:

Error: /data/local/tmp/ľc does not exist

根据documentation,这应该可以工作。 Windows 7 Pro 32 位 HUN 和 Windows 8.1 Pro 64 位 ENG 上的错误相同。该设备是三星 Galaxy S3 Mini (GT-I8190),运行 Android 4.1.2(API 级别 16)。

我做错了什么?

【问题讨论】:

    标签: android shell command-line adb android-uiautomator


    【解决方案1】:

    我强烈认为,

    adb shell $ <command>adb shell &lt;command&gt; 相同。在这方面我从未遇到过任何差异。

    请尝试adb kill-serveradb start-server

    也请尝试adb -s &lt;device_id&gt; shell &lt;command&gt; 你可以从adb devices 找到&lt;device_id&gt;

    能否请您告诉我们adb version 的输出是什么?

    【讨论】:

    • 谢谢,Anvesh。我从这里使用了最新的 SDK:developer.android.com/sdk/index.html 有趣的是,问题在一段时间后神秘地消失了,在两台开发 PC 上。我不知道发生了什么-在使用上述两步方法几天后,我再次尝试了单线,并且成功了。在这几天里,我做了一次 kill-server/start-server,多次重启了测试设备和开发 PC 等等。我不知道哪一个解决了问题。
    • 很高兴您的问题得到了解决。很可能是 SDK 问题。您能否将此问题标记为已解决?
    • 好的。我猜 kill-server 和 start-server 命令解决了这个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    相关资源
    最近更新 更多