Appium 无法检测屏幕(可见:false)元素

Appium can't detect screen (visible: false) elements

该项目是在 android /ios 平台上使用 cordova 和 运行 的混合应用程序(目前专注于 ios)。我已经成功地为自动化测试设置了 Appium,它工作得很好。问题出现在 Appium 检查器中,因为它可以看到一些元素但将它们标记为可见:false.

screenshot of visible: false attribute in appium.

每次尝试与这些 'invisible' 元素交互(点击、点击、发送键等)时,测试总是失败。 示例:

driver.findElement(By.xpath("...")).click();

出现错误时登录Appium: screenshot Appium logs

问题:

*我注意到我所有的矢量图标都标记为可见:false,这是一个大问题,因为我们的大部分导航都是图标。

*我已经尝试将我的 Appium 版本降级到 2.1.0(解决方案建议)。

*我正在使用 Java 客户端 Appium 4.0.0、Selenium 2.53.1、Xcode 7.3。

尝试使用以下 2 api:

tap(int fingers, int x, int y, int duration)

tap(int fingers, WebElement element, int duration) 

在 int fingers 中使用 1 作为参数,x = 3 和 y = 662 用于第一次 api 和第二次传递元素。使用 700 作为持续时间

api详情https://appium.github.io/java-client/io/appium/java_client/