无法在appium中单击移动网络中的按钮

时间:2015-03-09 13:35:27

标签: selenium appium

在各种论坛上彻底搜索到这些内容之后,我仍然没有得到答案。 以下是完整的详细信息

我通过classname识别元素,该元素指向多个(4)按钮。我在迭代按钮然后搜索文本,当有匹配时我点击它。

这适用于selenium webdriver和浏览器,如firefox,chrome

现在我用appium做同样的事情。 在通过classname标识的4个按钮中,脚本成功点击2个按钮,但是对于两个按钮单击发生(我可以看到按钮被点击)但是没有加载应该加载的新页面。未发生单击的按钮位于页脚类中,其他两个位于div类中。

我已经尝试过的事情

  1. 动作构建器 - 单击(),单击并保持()
  2. Javascript执行者
  3. 我目前正尝试使用触摸选项,点击并切换到原生视图,但尚未获得任何成功。

    如果遇到任何问题,我们将不胜感激。

    我想避免使用xPath,因为这可能会在我正在处理的页面中发生变化,我想强调脚本能够找到该按钮,但无法正确点击它。

3 个答案:

答案 0 :(得分:0)

您可以使用类名和索引过滤定位器。像这样:

driver.findElementsByXPath("//*[@class='android.widget.ImageView' and @index='0']");

此xpath也不会在其他设备上获得更改。

答案 1 :(得分:0)

你能看到:Unable to find an element in Browser of the Android emulator using Appium and C#吗? 如果在浏览器中测试Web应用程序,元素应该像网页上的常用元素一样定位(而不是像android.widget.EditText和android.widget.Button这样的类。)

答案 2 :(得分:0)

将appium java客户端升级到1.5.0(从1.3.0开始)解决了这个问题。需要检查原因!