Exception (org.openqa.le sélénium.NoSuchWindowException): l'utilisation de Selenium WebDriver avec Java dans Internet Explorer
Tout en utilisant IE pour l'automatisation à l'aide de Selenium Webdriver, je suis en mesure d'ouvrir l'URL mais la recherche de l'élément de la page est en train de jeter l'exception suivante:
org.openqa.le sélénium.NoSuchWindowException: Impossible de trouver l'élément sur
fermé la fenêtre (ATTENTION: Le serveur ne fournit pas toutes les stacktrace
de l'information)
J'ai essayé le driver.switchTo.window()
méthode, mais ça ne fonctionne pas.
J'ai cherché pendant des heures et je ne suis pas aller n'importe où.
Voici le code:
public static Selenium selenium;
public static void main(String args[]) {
try {
System.setProperty(
"webdriver.ie.driver",
"D:\\Driver\\IEDriverServer_Win32_2.32.3_latest\\IEDriverServer.exe");
DesiredCapabilities capab = DesiredCapabilities.internetExplorer();
capab.setCapability(
InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,
true);
WebDriver driver = new InternetExplorerDriver(capab);
driver.get("http://www.google.com");
driver.findElement(By.xpath(".//*[@id='addlang']/a[1]")).click();
} catch (Exception e) {
e.printStackTrace();
}
}
- S'il vous plaît prêter attention à la réponse ci-dessous, en ajoutant que la capacité de vraiment cause des instabilités dans vos tests, il n'y a pas de point d'en être même de diagnostiquer votre problème jusqu'à ce que le paramètre est supprimé. Je voudrais également vous demander de bien vouloir, à pas utiliser Google pour vos tests (sauf si vous avez un besoin, et je serais intéressé par ce que c'est parce que je voudrais placer un pari énorme dans que vous n'avez pas nécessairement besoin pour être fait une recherche dans Google de l'INTERFACE utilisateur, il existe des moyens autour d'elle). C'est un très page complexe. Veuillez utiliser beaucoup plus simple dans la page.
- Grâce Arran pour votre réponse. J'ai essayé d'utiliser d'autres pages que google aussi, mais arriver la même erreur. Cependant, je crois que j'ai compris le problème. C'est avec réglage de la INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS capacité. Merci encore..
- J'ai eu la même exception lors de l'utilisation d'IE 11. Je n'utilise pas toute la capacité, mais malheureusement j'ai eu cette exception.
- le pilote.switchTo.fenêtre() n'est pas l'idéal de code pour cette question.
Vous devez vous connecter pour publier un commentaire.
Supprimer capacité
INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS
et définir manuellement votre IE mode protégé paramètres soient les mêmes pour toutes les zones.Source:
http://jimevansmusic.blogspot.com/2012/08/youre-doing-it-wrong-protected-mode-and.html
NoSuchElementException est produite pendant la mise en œuvre de InternetExplorerDriver dans Selenium WebDriver
La question qui m'a aidé a été de mettre init de la page (c'est à dire 11 32 et 64)
Le meilleur pari est de faire quelques ajustements pour le registre:
Aller à la modification du registre (
regedit
d'exécuter de windows)Rechercher dans votre base de registre en vertu de la
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings\Zones
. Là-bas, vous devriez voir les touches de numéro de 0-4 . En vertu de ces touches de 0 à 4, regardez pour une valeur nommée 2500Pour toutes les touches de 0 à 4, ont les mêmes données pour la valeur de 2 500. Par exemple, pour la touche 0 si la valeur de 2500 a données 3 (hex de données), puis de rendre les données de valeur de 2500 3 pour toutes les autres touches (1,2,3,4).
Maintenant, essayez d'exécuter le script.