Heim >Java >javaLernprogramm >Warum erhalte ich die Fehlermeldung „Veraltete Elementreferenz' und wie kann ich sie beheben?
Veraltete Elementreferenz: Grund und Lösung
Der Fehler „Veraltete Elementreferenz“ tritt auf, wenn ein Element im DOM nicht mehr verfügbar ist. typischerweise, weil es entfernt oder neu erstellt wurde. Im bereitgestellten Code tritt der Fehler auf, weil das vom BenefitStatusLi-Xpath referenzierte Element nicht mehr gültig ist.
Die HTML-Struktur zeigt, dass der BenefitStatus-Link in einem
Um dieses Problem zu beheben, verwenden Sie eine explizite Wartezeit, um sicherzustellen, dass das Element ist beladen und stabil. Behandeln Sie außerdem die Ausnahme wegen veralteter Elementreferenzen, indem Sie erneut versuchen, das Element zu finden:
<code class="java">WebDriverWait wait = new WebDriverWait(driver, 10); try { WebElement benefitStatLi = wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(String.format(BenefitStatLi, i)))); benefitStatLi.click(); } catch (StaleElementReferenceException ex) { WebElement benefitStatLi = wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(String.format(BenefitStatLi, i)))); benefitStatLi.click(); }</code>
Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „Veraltete Elementreferenz' und wie kann ich sie beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!