Comment gérer l'exception de référence d'élément obsolète dans Selenium WebDriver
L'exception de référence d'élément obsolète de Selenium WebDriver se produit lorsque vous essayez d'utiliser une référence à un élément du DOM qui a été invalidé ou n’est plus valide. Cela peut se produire lorsque des pages Web complexes modifient leur DOM de manière dynamique, provoquant la destruction et la recréation d'éléments.
Comprendre WebElement
Un WebElement représente un élément dans le DOM. En raison du comportement dynamique de la page, les éléments peuvent être détruits puis recréés, rendant les références WebElement existantes invalides.
Résolution de l'exception de référence d'élément obsolète
Chaque fois que vous rencontrez un StaleElementException, la solution réside dans l'actualisation de votre référence en retrouvant l'élément. Ce processus implique de localiser à nouveau l'élément à l'aide d'une stratégie de localisation fiable, telle que By.id ou By.xpath.
Exemple concret
Considérez le code suivant extrait :
WebElement element = driver.findElement(By.id("my-element")); element.click(); // Page is modified dynamically driver.findElement(By.id("my-element")).sendKeys("New Value"); // Stale Element Reference Exception
Pour résoudre cette exception, nous pouvons rafraîchir notre référence WebElement :
WebElement refreshedElement = driver.findElement(By.id("my-element")); refreshedElement.sendKeys("New Value");
En retrouvant l'élément, nous nous assurons que nous avons une référence valide au DOM élément et peut continuer à interagir avec lui.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!