Google地图 - 无法找到放大/缩小元素

时间:2017-05-02 10:11:56

标签: android junit automated-tests appium

我正在测试一个我需要缩放4倍才能到达特定区域的应用。

我使用了以下xpath:

 @FindBy(xpath= "//android.widget.ImageView[@content-desc='Zoom in']")
 WebElement btnZoomIn;

但是,我得到以下错误:

 An element could not be located on the page using the given search parameters. 

我也尝试过使用

  List<WebElement> listImageView = driver.findElements(By.className(("android.widget.ImageView")));

但是,listImageView.size()返回0

以下是UIAutomatorViewer截图:

enter image description here

请帮我解决一下。谢谢!

2 个答案:

答案 0 :(得分:0)

根据视图层次结构,我看到其中一个父元素列出了类名&#39; android.support.v4.widget.Drawerlayout&#39;巫婆用于较低版本的android。

如果要为Android的较低版本自动化您的应用程序,请尝试使用在Selendroid模式下运行的驱动程序运行测试。可以使用以下额外的所需功能进行设置:

  

capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME,   AutomationName.SELENDROID);

  

capabilities.setCapability(&#34; automationName&#34;,&#34; Selendroid&#34;);

答案 1 :(得分:0)

我找到了问题的解决方法。

问题是在加载地图之前,我曾经获得Android位置权限警报。当我点击&#34;是&#34;时,地图已加载。 但司机无法找到这些元素。 所以,我将我的Appium驱动程序从1.6.3更新到1.6.4;并添加了

capabilities.setCapability(&#34; autoGrantPermissions&#34;,true);

之后没有显示Permissions的提醒,我能够获取Google Maps的控件元素。

我仍然无法弄清楚权限警告如何影响屏幕上元素的可见性。