executescript funktioniert nicht mit den InternetExplorer-Treiber (Selen)

Ich aus irgendeinem Grund nicht ausführen kann, beliebigen javascript-Code mit "executescript" wenn ich meine funktionalen tests durch, DH. Es funktioniert mit Firefox. Gesucht hab ich mehrere Stunden bei google mit kein Glück.

Ich bin einfach aufrufen

browser.driver.executeScript("console.log('test');")

oder

JavascriptExecutor js = (JavascriptExecutor) driver
driver.executeScript("console.log('test');")

oder was auch immer Variante, die Sie bitte zum Aufruf der executeScript-Methode.

Den stacktrace bin ich immer:

org.openqa.selenium.WebDriverException: JavaScript error (WARNING:
The server did not provide any stacktrace information)
Command duration or timeout: 164 milliseconds
Build info: version: '2.37.1', revision: 'a7c61cbd68657e133ae96672cf995890bad2ee42',           
time: '2013-10-21 09:08:07'
System info: host: 'functionalTests', ip: '10.22.6.112', os.name: 'Windows 8', os.arch:    
'x86', os.version: '6.2', java.version: '1.6.0_45'
Session ID: 8b04c740-07a0-4678-a1b6-aacd56268625
Driver info: org.openqa.selenium.ie.InternetExplorerDriver
Capabilities [{platform=WINDOWS, javascriptEnabled=true, elementScrollBehavior=0,     
enablePersistentHover=true, ignoreZoomSetting=false, ie.ensureCleanSession=false,   
browserName=internet explorer, enableElementCacheCleanup=true,   
unexpectedAlertBehaviour=dismiss, version=11, ie.usePerProcessProxy=false, 
cssSelectorsEnabled=true, ignoreProtectedModeSettings=false, requireWindowFocus=false,  
initialBrowserUrl=http://localhost:17553/, handlesAlerts=true,  
ie.forceCreateProcessApi=false, nativeEvents=true, browserAttachTimeout=0, 
ie.browserCommandLineSwitches=, takesScreenshot=true}]
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:193)
at  
org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:554)
at 
org.openqa.selenium.remote.RemoteWebDriver.executeScript(RemoteWebDriver.java:463)
at functional.utility.JQInstaller.installJQ(JQInstaller.groovy:16)
at functional.spec.NavigateAccountSettingsSpec.Navigate to the Account 
Settings(NavigateAccountSettingsSpec.groovy:39)

Ist es nicht ein problem mit meinem "JQInstaller" Klasse, weil ich fand, dass heraus und versuchte, nur Konsole.log-Funktionen. Es ist ein problem mit diesem "executeScript" - Methode. Ich bin mit Selen 2.37.1.

  • Welche version von IE benutzt du? IE8 und unten nicht die Konsole.melden
  • Ich bin mit 9,10 und 11
  • Es ist problem nur mit dem IE? Testen Sie weitergeben, wenn Sie ausführen, Firefox-browser?
  • Ja, das ist richtig. Ich kann nicht laufen, jeden Anschein von "executeScript" im IE.
  • haben Sie das gelöst? ich bin Fehlerbehebung die gleichen, die jetzt auf 2.39.0
  • Nein, denn nun haben wir gerade anhaften von firefox.
  • Das ist seltsam, aber die dev Jungs hochgeladen, einige fehlende png-Dateien, und nach, dass die eval ist in Ordnung, und alle tests grün auf IE10. Überprüfen Sie, ob Ihre Seite vollständig geladen ist unexisting Ressourcen und lassen Sie uns wissen, wenn Sie Zeit finden. Cheers
  • Wir haben keine fehlenden Ressourcen auf dieser Seite. Mist, ich hatte gehofft, das wäre es.
  • Ich habe das gleiche Problem, mit Selen 2.40.0 habe ich davon berichtet: code.google.com/p/selenium/issues/...
  • Sie sagen, "nichts funktioniert", aber dein Beispiel wird der Fehler, wenn die F12-Developer-Tools-Fenster nicht geöffnet ist (beim Zugriff auf die Konsole.<nichts>", wenn die F12-tools nicht öffnen gibt eine Fehlermeldung aus, die in mindestens IE < 10). Was passiert, wenn Sie etwas tun, wie js.executeScript("return 1+1;");?
  • Wenn Sie Zugriff auf eine Seite, die lokal auf Ihrem computer, d.h. eine Datei Pfad ist "C:\" Internet Explorer können verhindern, dass die Ausführung von javascript. Siehe: stackoverflow.com/questions/7038724/...

InformationsquelleAutor jcd | 2013-12-31
Schreibe einen Kommentar