Lorsque j'ouvre un nouvel onglet sur IE, je ne peux pas gérer cela. Comment gérer le nouvel onglet IE et accéder à l'URL?
J'utilise Ctrl + T
3 Réponses :
Essayez avec l'exécuteur JavaScript,
JavascriptExecutor js = (JavascriptExecutor) driverInstance; js.executeScript("window.open(arguments[0], 'blank')", null):
Cela devrait également fonctionner ... mais l'utilisation de l'exécuteur JavaScript n'est généralement pas recommandée.
Merci pour votre aide, mais cela ne fonctionne pas avec IE,
Vous pouvez utiliser:
driver.switchTo().window()
L'utilisation de JavaScriptExecutor
n'est généralement pas recommandée.
Vous devriez jeter un œil à cette question et essayez d'activer le mode de compatibilité.
Aussi , jetez un œil à cette réponse pour obtenir des informations générales sur l'utilisation de Selenium avec IE.
J'espère que cela vous aidera !
Les liens ont été utiles.
Merci pour votre aide, mais ce n'est pas géré avec le navigateur IE,
@ TrungNghĩaCao avez-vous regardé les liens Dans la réponse?
Merci, j'ai trouvé des solutions à partir de votre réponse
@ TrungNghĩaCao heureux d'entendre!
@MosheSlavin c'est la réponse à ma question stackoverflow.com/questions/46251494/...
Essayez de faire référence à une ligne de code pour changer d'onglet.
//Switching between tabs using CTRL + tab keys. driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL +"\t"); //Switch to current selected tab's content. driver.switchTo().defaultContent();
pour plus d'informations, vous pouvez consulter les liens ci-dessous.
(1) Comment ouvrir un onglet et basculer entre Onglets dans Selenium WebDriver
WebUI.openBrowser ('google.com') WebDriver driverInstance = DriverFactory.getWebDriver () //driverInstance.findElements(By.cssSelector('input[name="bt nK "] ')). Get (0) .sendK eys (KeyEvent.VK_CONT ROL, KeyEvent.VK_T) WebUI.sendKeys (null, Keys.chord (Keys.CONTROL, "t")) driverInstance.switchTo (). defaultContent () driverInstance.get ("google.com")
Tout d'abord, je vous suggère de faire un test en utilisant un nouvel exemple de code et d'essayer simplement d'en changer les onglets. Une fois que cela fonctionne, essayez de l'implémenter dans votre code d'origine. J'ai également remarqué que votre code n'utilise pas '\ t'. Ça manque '\'.
Salut @MosheSlavin Merci pour votre aide. Mais je dois gérer le nouveau navigateur d'onglets IE pour trouver des éléments. Cela fonctionne avec Chrome, mais IE ne l'est pas.
Vous devriez expliquer plus dans votre question ... qu'avez-vous essayé?
Mon script WebUI.openBrowser ('google.com') WebDriver driverInstance = DriverFactory.getWebDriver () //driverInstance.findElements(By.cssSelector('input[name="bt nK "] ')). Get (0). sendK eys (KeyEvent.VK_CONT ROL, KeyEvent.VK_T) WebUI.sendKeys (null, Keys.chord (Keys.CONTROL, "t")) driverInstance.switchTo (). defaultContent () driverInstance.get ("google.com ") Cela ne fonctionne pas avec le navigateur IE.
On dirait que vous ouvrez un nouvel onglet ici. IE bloquera cela par défaut. (Il décide qu'il s'agit d'un popup et invitera l'utilisateur à accepter ...)