Получение ошибки - org.openqa.selenium.StaleElementReferenceException: ссылка на устаревший элемент: элемент не прикреплен к документу страницы - PullRequest
0 голосов
/ 19 июня 2020

Я делаю нумерацию страниц на веб-странице. В котором 20 учетных записей были загружены на страницу и после повторного нажатия кнопки были загружены еще 20 учетных записей. После третьего нажатия кнопка исчезла с веб-страницы, и все учетные записи были загружены. Но я получаю сообщение об ошибке:

"org.openqa.selenium.StaleElementReferenceException: ссылка на устаревший элемент: элемент не прикреплен к документу страницы"

Ниже приведен код:

public static WebDriver driver;
public static List<WebElement> tarif;
public static Actions action;
public static boolean flag;

driver.manage (). Timeouts (). ImplicitlyWait (10, TimeUnit.SECONDS);

    tarif = driver.findElements(By.xpath("//button[contains(text(),'tarife')]"));


    flag = true;

        while(flag) {

            System.out.println(flag);

            System.out.println(tarif.size());

            if (tarif.size() > 0) {

                //try {

                    Actions action = new Actions(driver);
                    action.moveToElement(tarif.get(0)).build().perform();
                    Thread.sleep(5000);

                    tarif.get(0).click();

            } else {

                flag = false;
            }

        }

    Thread.sleep(5000);

    driver.quit();

Не могли бы вы помочь мне, пожалуйста, относительно вышеизложенного?

1 Ответ

0 голосов
/ 19 июня 2020

Исключение устаревшего элемента означает, что элемент присутствует на веб-странице, но селен не может перехватить этот элемент, есть 2 способа решить эту проблему: 1. Попробуйте выполнить page refre sh (driver.navigate (). Refre sh () ;) 2. Просто используйте элемент l oop, пока не щелкните этот элемент

...