Impossible de trouver l'élément sur la fenêtre fermée sur IE 11 avec Selenium
Je suis en train de faire des tests sur Internet Explorer 11 travailler avec Selenium WebDriver.
Le code est:
System.setProperty("webdriver.ie.driver", "Path/to//IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriver();
driver.get("www.google.com");
driver.findElement(By.name("q"));
Et j'obtiens cette erreur:
Commencé InternetExplorerDriver serveur (64-bit)
2.46.0.0 l'Écoute sur le port 43760 Exception in thread "main" 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) de Commande de la durée ou de l'expiration: 15 millisecondes Construire info:
version: '2.46.0', de la révision:
'61506a4624b13675f24581e453592342b7485d71', temps: "2015-06-04
10:22:50' System info: accueil: 'user1-PC", ip: '10.0.23.71', os.nom:
De "Windows 7", système d'exploitation.arc: amd64, os.version: '6.1', java.version:
'1.8.0_45 Driver info: org.openqa.le sélénium.c'est à dire.InternetExplorerDriver
Capacités [{browserAttachTimeout=0, enablePersistentHover=true,
c'est à dire.forceCreateProcessApi=false, pageLoadStrategy=normal,
c'est à dire.usePerProcessProxy=false, ignoreZoomSetting=false,
handlesAlerts=vrai, version=11,=plate-forme WINDOWS, nativeEvents=true,
c'est à dire.ensureCleanSession=false, elementScrollBehavior=0,
c'est à dire.browserCommandLineSwitches=, requireWindowFocus=false,
browserName=internet explorer,
initialBrowserUrl=http://localhost:43760/, takesScreenshot=true,
javascriptEnabled=true, ignoreProtectedModeSettings=false,
enableElementCacheCleanup=true, cssSelectorsEnabled=true,
unexpectedAlertBehaviour=rejeter}] ID de Session:
8a5b7ab5-862a-462d-ab4b-929d4ed5b71a
*** Élément d'infos: {l'Aide d'=nom, valeur=q} au soleil.de réfléchir.NativeConstructorAccessorImpl.newInstance0(Native method)
au coucher du soleil.de réfléchir.NativeConstructorAccessorImpl.newInstance(Inconnu
Source)
soleil.de réfléchir.DelegatingConstructorAccessorImpl.newInstance(Inconnu
Source) at java.lang.de réfléchir.Constructeur.newInstance(Source Inconnue)
au
org.openqa.le sélénium.à distance.ErrorHandler.createThrowable(ErrorHandler.java:204)
au
org.openqa.le sélénium.à distance.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:156)
au
org.openqa.le sélénium.à distance.RemoteWebDriver.execute(RemoteWebDriver.java:605)
au
org.openqa.le sélénium.à distance.RemoteWebDriver.findElement(RemoteWebDriver.java:358)
au
org.openqa.le sélénium.à distance.RemoteWebDriver.findElementByName(RemoteWebDriver.java:431)
au org.openqa.selenium.By$ByName.findElement(Par.java:300)
org.openqa.le sélénium.à distance.RemoteWebDriver.findElement(RemoteWebDriver.java:350)
au MySel20Proj.MySel20Proj.App.principale(App.java:42)
J'ai essayé de suivre le tutoriel configurer sur https://code.google.com/p/selenium/wiki/InternetExplorerDriver mais ne fonctionne toujours pas. Et ce code fonctionne sur Firefox et Chrome.
source d'informationauteur Alex
Vous devez vous connecter pour publier un commentaire.
Essayez d'aller dans les Options Internet --> --> "Activer le Mode Protégé" sur TOUS zones doivent être enregistrés ou de TOUS décochée.
Il y a 2 façons:
Voie 1: Réglage INITIAL_BROWSER_URL:
Chemin 2: Pour définir une entrée de registre sur l'ordinateur cible:
Pour IE 11 seulement, vous aurez besoin de définir une entrée de registre sur l'ordinateur cible, de sorte que le conducteur puisse maintenir
une connexion à l'instance d'Internet Explorer qu'il crée.
Pour Windows 32 bits: La clé que vous devez examiner dans l'éditeur du registre est
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE.
Pour la version 64 bits de Windows: La clé est
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE.
Veuillez noter que le FEATURE_BFCACHE sous-clé peut ou ne peut pas être présent, et devrait être créée si elle n'est pas présente.
Important: à l'Intérieur de cette clé, créez une valeur DWORD nommée iexplore.exe avec la valeur 0.
Pour plus de détails, vous pouvez visiter: https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver#required-configuration
J'ai fait face à la même question, après être passé par toutes les solutions possibles, enfin, j'ai eu la réponse.Essayez cela, il va certainement résoudre votre problème.
Pour Windows 32 bits: La clé que vous devez examiner dans l'éditeur du registre est HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE.
Pour la version 64 bits de Windows: La clé HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE.
Veuillez noter que le FEATURE_BFCACHE sous-clé peut ou ne peut pas être présent, et devrait être créée si elle n'est pas présente. Important: à l'Intérieur de cette clé, créez une valeur DWORD nommée iexplore.exe avec la valeur 0.
J'avais été confronté au même problème. J'ai fait face alors que j'étais à l'exécution de mon code dans le Maven build. Ici, dans le POM fichier XML, j'ai eu une version différente alors que réelle sélénium est installé une autre version. Donc juste changé la version de sorte qu'elle corresponde avec la version installée. Et Maintenant, tout fonctionne bien