Используя appium + селен + Java. Попытка дождаться мобильного элемента с определенным текстом.
В мобильном приложении я захожу на страницу, а при входе в систему имею android.widget.TextView (0) с текстом, поэтому я проверяю этот текст и, если новый элемент android.widget.TextView (0) с разнымитекст появляется, тогда я могу пойти с другими шагами. Когда появляется новый элемент, старый не существует
Для этого используется следующий код, но тогда я вижу
Cached elements 'By.clazz: android.widget.TextView' do not exist in DOM anymore
Код:
public static MobileElement waitForElementText(AndroidDriver driver, int index, String text, int timeout) {
List<MobileElement> mobileElement = null;
do {
mobileElement = new WebDriverWait(driver, timeout)
.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.className("android.widget.TextView")))
.stream().map(element -> (MobileElement) element).collect(Collectors.toList());
System.out.println("waiting for: " + text + " found: " + mobileElement.get(index).getText());
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} while (mobileElement.get(index).getText() != text);
System.out.println(mobileElement.get(index).getText());
return mobileElement.get(index);
}
любые идеи, что яЯ делаю не так?