Robotium:如何在机器人中通过ID来定位元素?

时间:2013-11-14 06:48:04

标签: android robotium

我想在文本字段中输入文本,所以如果我将使用索引,那么我的代码就是:

solo.enterText(0, "text");

我想使用id而不是index 。我有源代码,但我还没有将它添加到测试项目中,使用APK进行测试。我可以从源代码中获取ID。

如何使用id代替索引?

3 个答案:

答案 0 :(得分:0)

像这样:

 solo.enterText((EditText)solo.getView(int/String id), String text);

答案 1 :(得分:0)

如果您无权访问源代码,则获取视图的ID使用层次结构视图工具 启动模拟器,安装应用程序,打开视图,然后转到层次结构视图以获取ID

http://developer.android.com/tools/debugging/debugging-ui.html#indiView

答案 2 :(得分:0)

您可以回答自己的问题,最简单的方法是将您正在测试的应用程序作为测试应用程序的依赖项,然后您可以在测试应用程序中使用其R文件,它将按预期工作。但是,如果这不是一个选项,您应该使用robotium的新功能(4.2+)通过字符串获取ID,如:

solo.getView("com.xxx.yyy.R.id.zzz");

其中com.xxx.yyy是您正在测试的应用程序的包名称,zzz是您要单击的元素的ID。如果您不了解zzz,请使用层次结构查看器查找它。