0

我们正在尝试为原生 Android 应用程序编写测试,这让我发疯了。

    solo.enterText(6, "100");
    solo.enterText(7, "200");
    solo.enterText(8, "300");
    solo.enterText(9, "400");

一切正常,但是一旦索引超过 10,它就无法找到任何字段。

    solo.enterText(10, "500");
    solo.enterText(11, "600");

计算文本字段似乎也有点疯狂,并且在 UIAutomator Viewer 中它似乎没有提供真正的索引号。

有没有办法通过资源 id 或字段名称而不是索引号来选择文本字段?

感谢您的帮助

4

2 回答 2

1

尝试这个:

 EditText editText
 =(EditText)getActivity().findViewById(R.id.editText);
 mSolo.enterText(editText,"500");

使用 R 文件和 id 资源应该更容易测试 editText

于 2014-02-20T13:49:29.910 回答
0

我的猜测是,如果您查看屏幕,您将只能看到 10 个编辑文本框,并且索引为 10+ 的编辑文本不在屏幕上并位于列表视图中,因此它们实际上并不存在于机器人中,您将需要在输入文本之前滚动,但索引将关闭,因此您必须进行补偿。另一种方法是通过 id 或标签等不同的方式查找编辑文本,或者将它们作为它们所在的列表视图行的子项来查找。

如果您可以确认这是因为它在列表视图中,我可以找到一些代码来帮助您。

于 2014-02-20T15:46:21.237 回答