我正在测试一个我需要缩放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截图:
请帮我解决一下。谢谢!
答案 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的控件元素。
我仍然无法弄清楚权限警告如何影响屏幕上元素的可见性。