我试图使用selenium / java和appium自动化Android移动应用程序。我将Android设备连接到我的电脑,并尝试使用uiautomator viewer拍摄截图后检查应用程序屏幕上的元素。但是整个屏幕显示在单帧frameLayout中,我无法检查帧内的每个元素。
我也尝试使用chrome检查,但使用chrome检查器检测不到元素。
有时请帮忙吗?
答案 0 :(得分:0)
这是我前段时间提出的类似问题:
How to tap on a element which is focused in appium. Unable to select value of a dropdown in appium
如果存在任何帧,可以通过切换到帧来尝试。
ad.switchTo().frame(ad.findElement(By.xpath("YOURXPATH")));
尝试使用driver.getPageSource();
。它会返回你的XML DOM,如果你得到的值那么它就是好的。为此编写一个XPath。
你只需要使用co-ordinare然后使用tab
以下代码为我工作
By filter =By.xpath("MYLOCATOR");
System.out.println("About to click on result");
Point point = ad.findElement(filter).getLocation();
int elementCenterX = point.getX() + 80;
int elementCenterY = point.getY() + 100;
System.out.println("value of x = "+elementCenterX+" value of y = "+elementCenterY);
ad.tap(2, elementCenterX , elementCenterY , 0);
注意: - 您需要根据上述代码中的要求调整X和Y,并传递最近的定位器,如下拉列表的文本框。
答案 1 :(得分:-1)
嘿,我遇到了同样的问题,ui自动化器没有错,这是电话本身。手机正在阅读招待,因此当您尝试查找一个元素时,您不能锁定它。因此,进入设置并点击“显示更改为全屏显示”