无法单击appium中移动网络中的按钮
Unable to click button in mobile web in appium
在各种论坛上详尽搜索后,我仍然没有答案。
这是完整的详细信息
我通过指向多个 (4) 按钮的 classname 来识别元素。我正在遍历按钮,然后搜索文本,当有匹配项时我点击它。
这适用于 selenium webdriver 和 firefox 等浏览器,chrome
现在我正在用 appium 做同样的事情。
在通过 classname 识别的 4 个按钮中,脚本成功点击了 2 个按钮,但是对于两个按钮,点击发生了(我可以看到按钮被点击)但是应该加载的新页面没有加载。未发生点击的按钮位于页脚 class 中,另外两个按钮位于 div class.
中
我已经尝试过的东西
- 动作生成器 - click()、clickandhold()
- Javascript执行者
我目前正在尝试使用触摸选项、点击并切换到本机视图,但没有发现任何成功。
如有遇到同样情况,将不胜感激。
我想避免使用 xPath,因为它可能会在我正在处理的页面中发生变化,我想强调脚本能够找到按钮,但无法正确单击它。
您可以使用 class 名称和索引来过滤您的定位器。像这样:
driver.findElementsByXPath("//*[@class='android.widget.ImageView' and @index='0']");
此 xpath 在其他设备上也不会更改。
你能看到: 吗?
如果在浏览器中测试网络应用程序,元素应该像通常的元素一样放置在网页上(而不是像 android.widget.EditText 和 android.widget.Button 这样的 类)。
将 appium java 客户端升级到 1.5.0(从 1.3.0)解决了这个问题。需要检查原因!
在各种论坛上详尽搜索后,我仍然没有答案。 这是完整的详细信息
我通过指向多个 (4) 按钮的 classname 来识别元素。我正在遍历按钮,然后搜索文本,当有匹配项时我点击它。
这适用于 selenium webdriver 和 firefox 等浏览器,chrome
现在我正在用 appium 做同样的事情。 在通过 classname 识别的 4 个按钮中,脚本成功点击了 2 个按钮,但是对于两个按钮,点击发生了(我可以看到按钮被点击)但是应该加载的新页面没有加载。未发生点击的按钮位于页脚 class 中,另外两个按钮位于 div class.
中我已经尝试过的东西
- 动作生成器 - click()、clickandhold()
- Javascript执行者
我目前正在尝试使用触摸选项、点击并切换到本机视图,但没有发现任何成功。
如有遇到同样情况,将不胜感激。
我想避免使用 xPath,因为它可能会在我正在处理的页面中发生变化,我想强调脚本能够找到按钮,但无法正确单击它。
您可以使用 class 名称和索引来过滤您的定位器。像这样:
driver.findElementsByXPath("//*[@class='android.widget.ImageView' and @index='0']");
此 xpath 在其他设备上也不会更改。
你能看到:
将 appium java 客户端升级到 1.5.0(从 1.3.0)解决了这个问题。需要检查原因!