La meilleure façon de suivre et de parcourir les onglets et les fenêtres dans Selenium (à l'aide de WindowHandles)
Dans les tests de logiciels, garder la trace de plusieurs onglets et fenêtres peut être un défi. Selenium fournit la propriété WindowHandles pour gérer ce problème, mais son ordre de tri imprévisible peut constituer un inconvénient.
Caractère aléatoire de l'ordre WindowHandle
Comme mentionné dans la discussion donnée, Selenium ne garantit pas que l'ordre des poignées de fenêtre soit dans l'ordre dans lequel les fenêtres ont été créées. Ce caractère aléatoire rend difficile la navigation sur les fenêtres dans l'ordre souhaité.
Alternatives
Pour résoudre ce problème, nous pouvons utiliser une méthode plus fiable :
Ce qui suit est un exemple écrit en Java, WebDriver 3.5.3 et IEDriverServer 3.5.0.0 :
<code class="language-java">WebDriverWait wait = new WebDriverWait(driver, 5); wait.until(ExpectedConditions.numberOfWindowsToBe(2)); Set<String> s1 = driver.getWindowHandles(); Iterator<String> i1 = s1.iterator();</code>
En suivant ces étapes, nous pouvons gérer plusieurs onglets et fenêtres plus efficacement, garantissant ainsi un comportement d'itération et de commutation prévisible.
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!