我有自动化项目(java,appium,android) 在此项目中,元素存储在数据库中。 我从数据库中获取元素并尝试找到它:
1)使用findElements进行定位器搜索:
if (!elementPath.equals("")){
List elementFound = driverCommands.findElements(By.xpath(elementPath));
if (elementFound.size() == 0){
return null;
}
return (AndroidElement) elementFound.get(0);
}
2)使用findElement进行定位器搜索:
String elementPath = entity.getElementPath();
driverCommands.findElement(By.xpath(elementPath));
在这两种情况下,我什么都没得到。但是如果我在使用findElemen之前添加sleep()
并等待至少4秒,如下例所示,则会找到该元素。
try {
Thread.sleep(4000);
} catch (InterruptedException e) {
e.printStackTrace();
}
if (!elementPath.equals("")){
List elementFound = driverCommands.findElements(By.xpath((elementPath));
if (elementFound.size() == 0){
return null;
}
return (AndroidElement) elementFound.get(0);
我该如何解决这个问题?