AndroidViewClient中FindViewByDorRaise出现问题

AndroidViewClient中FindViewByDorRaise出现问题,android,monkeyrunner,androidviewclient,Android,Monkeyrunner,Androidviewclient,尝试使用MonkeyRunner执行一些测试,并希望使用AndroidViewClient处理EditText小部件 我相信我正确地使用了AndroidViewClient(以下相关内容),findViewByDorRaise()总是抛出错误。我已经尝试了我想到的每个指定ID的变体 以下是我的活动XML的一个片段: <EditText android:id="@+id/someText" ... > <requestFocus /> </Ed

尝试使用MonkeyRunner执行一些测试,并希望使用AndroidViewClient处理EditText小部件

我相信我正确地使用了AndroidViewClient(以下相关内容),
findViewByDorRaise()
总是抛出错误。我已经尝试了我想到的每个指定ID的变体

以下是我的活动XML的一个片段:

<EditText
    android:id="@+id/someText"
    ... >
    <requestFocus />
</EditText>
<!-- Yes, that is the actual id of my EditText -->
当然,我的代码所做的比显示的要多一点(但不多)。我去掉了所有看起来不相关的东西。我很乐意把它全部放在那里,但我不想一开始就把代码都吐在这里

我已经看过了关于这个主题的所有内容:


你知道我做错了什么吗?

最新版本的ViewClient为应用程序中的每个视图提供了一个唯一的id。id格式为i/no\U id/number。可以使用名为dump.py的脚本查看当前视图。它位于ViewClient的examples文件夹中。

太好了,有了它,我就能够找到答案。编写了自己的方法来查找唯一ID。以下是您提到的脚本供参考:
device, serialno = ViewClient.connectToDeviceOrExity(serialNo=myDeviceId)
vc = ViewClient(device=device, serialno=serialno)
device.installPackage(apkPath)
device.startActivity(component='com.app.name/com.app.name.ActivityName')
editTextId = 'id/someText'
try:
    someText = vc.findViewByIdOrRaise(editTextId)
    someText.touch()
    someText.type('Derp derp derp')
except ViewNotFoundException, e:
    # The comma above is because Jython 2.5.3 does not support the AS keyword
    print ' [*] %s' % (e)