如何使用ActionBar Sherlock的视图使用calabash android?

时间:2013-04-12 18:25:49

标签: android actionbarsherlock calabash

我在Androi项目中使用葫芦。我想按动作栏Sherlock中的菜单项。此视图是一个图标,其ID为R.drawable.info_icon。

如果是我布局的普通视图,我可以使用

step 'I press view with id "info_icon"'

但是对于sherlock我得到了这个错误:

Step unsuccessful: Could not find view with id: 'info_icon' (RuntimeError)

有人知道我怎么能用葫芦测试按下这个视图?

谢谢!

1 个答案:

答案 0 :(得分:1)

您所指的ID是图像的ID,而不是视图的ID。 实际上,正如creator of the library himself所解释的那样,您无法访问ActionBar中的任何视图。

相反,您可以尝试根据索引触摸视图。要查找索引,请查看this tutorial,其中显示了如何使用实时控制台来发现视图。一旦您对要触摸的元素有了良好的查询,只需编写一个自定义步骤,如下所示:

When /^I press the info icon menu item$/ do 
  macro 'I press the menu key'
  wait_for_elements_exist(["IconMenuItemView index:X"])
  touch("IconMenuItemView index:X")
end

X是您使用控制台找到的视图的索引。